@100R

Как настроить Laravel Mix для сборки асинхронных компонентов Vue.js?

Использую асинхронную загрузку компонентов. Все работает, но не совсем так, как хотелось бы. Laravel Mix собирает .js файлы компонентов не в public > js, а просто в public. Во-вторых, было бы хорошо называть файлы названием компонента. Хотя второе не столь важно, главное разобраться с первой проблемой.

app.js

import Vue from 'vue'
import router from "./router";
import App from './components/App.vue'

new Vue({
    el: '#app',
    router,
    render: h => h(App)
})

router.js

import Vue from "vue";
import Router from "vue-router";

Vue.use(Router);

export default new Router({
    mode: 'history',
    routes: [
        {
            path: "/",
            component: () => import("./components/ProductList.vue")
        },
        {
            path: "/cart",
            component: () => import("./components/ShoppingList.vue")
        }
    ]
});

webpack.mix.js

const mix = require('laravel-mix');

mix.js('resources/js/app.js', 'public/js')
    .sass('resources/sass/app.scss', 'public/css');
  • Вопрос задан
  • 371 просмотр
Решения вопроса 1
@100R Автор вопроса
Разобрался.

() => import(/* webpackChunkName: "js/cart" */ "./components/ShoppingList.vue")
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы