【发布时间】:2016-09-13 15:58:20
【问题描述】:
我正在尝试在 laravel 项目中将一些 Vue.js 组件加载到我的 app.js 文件中(通过 elixir 使用 browserify/vueify)。
我不想一次加载每个组件,而是在需要时使用 vue router 延迟加载各个 vue 组件。
我在哪里设置 partition bundle json 文件,它的结构应该如何?
目前,我已将以下内容绑定到我的主要 app.js 文件中:
import Vue from 'vue';
import Resource from 'vue-resource';
import VueRouter from 'vue-router';
// These are the components that I wish to lazy load:
// import Users from './components/Users.vue';
// import Sales from './components/Sales.vue';
// import Projects from './components/Projects.vue';
// import Dashboard from './components/Dashboard.vue';
// import Receipts from './components/Receipts.vue';
Vue.use(Resource);
Vue.use(VueRouter);
var router = new VueRouter();
router.map({
'/async': {
component: function (resolve) {
loadjs(['./components/Users.vue'], resolve)
}
}
})
这就是我卡住的地方:
- 我们如何在
router.map函数中延迟加载上面列出的所有 .vue 组件? - 如何设置上面的
partition table json文件,应该保存在哪里?
【问题讨论】:
-
相当老的问题,但如果有人需要更多信息来延迟加载组件。这是docs的链接。
标签: javascript browserify vue.js laravel-elixir vue-router