这只是理论问题。例如,我在Vue.js中使用Element UI库进行了复制,该库为我提供了按需加载组件的功能。
https://element.eleme.io/#/en-US/component/quickstart#on-demand
通过这些指令,组件在应用程序启动时加载并在全局注册,直到时间结束。:)
是否有一种方法可以在第一次使用时延迟加载它们中的每个?
我知道我可以每次在目标视图或组件中手动导入每个Element组件,并且关心延迟加载,但是我很好奇,是否有机会在main.js中做到这一点。
import Vue from 'vue';
import App from './App.vue';
import Button from 'element-ui';
import Option from 'element-ui';
import Select from 'element-ui';
// I believe this is working, but is automatically invoked in next lines
// const Button = () => import('element-ui');
// const Option = () => import('element-ui');
// const Select = () => import('element-ui');
Vue.use(Button);
Vue.use(Option);
Vue.use(Select);
// Maybe something like this, but seems not to work
// Vue.component('Button', () => import('element-ui'));
// Vue.component('Option', () => import('element-ui'));
// Vue.component('Select', () => import('element-ui'));
new Vue({
render: h => h(App)
}).$mount('#app')
那么,这仅仅是一个愚蠢的问题,还是我们可以在Vue.js中延迟加载全局注册的组件?
感谢您的所有想法和提示!