Laravel (5.8) и VUE работают очень хорошо, но мое приложение. js становится большим.
Например, у меня есть следующее приложение. js:
window.Vue = require('vue');
window.Vue.component('Comp1', require('./components/Comp1.vue').default);
window.Vue.component('Comp2', require('./components/Comp2.vue').default);
window.Vue.component('Comp3', require('./components/Comp3.vue').default);
window.mainApp = new Vue({
el: '#app'
});
В реальном случае у меня около 30 компонентов + сторонних производителей, что приводит к 1,2 МБ JS для производства.
Итак, я пытаюсь сломать приложение . js файл во многих «связанных с областью» js, просто разделить, поэтому у меня будет что-то вроде:
app. js:
window.Vue = require('vue');
window.mainApp = new Vue({
el: '#app'
});
appMainComp. js:
window.Vue.component('Comp1', require('./components/Comp1.vue').default);
window.Vue.component('Comp2', require('./components/Comp2.vue').default);
appOtherComp. js:
window.Vue.component('Comp3', require('./components/Comp3.vue').default);
Теперь подвох. Все, что я регистрирую после приложения. js "window.mainApp = new Vue ({el: '#app'});" не регистрироваться.
Итак, есть ли способ зарегистрировать компонент после создания моего mainApp? Что-то вроде
mainApp.addComponent('./components/Comp1.vue');
Или как-то иначе разбить приложение. js в нескольких файлах?