记一次 Laravel-mix 使用 vue 路由懒加载填坑

简介
尝试在laravel中进行与vue脚手架一致的开发体验,在配置路由懒加载时遇到了一些问题。

安装
yarn add vue-router --save

填坑
路由代码中

{
    path: '/auth/register',
    name: 'Register',
    component: () => import('@/views/auth/Register')
  }

其中的component: () => import('@/views/auth/Register')懒加载会报错。

此时首先安装yarn add babel-plugin-dynamic-import-webpack --save-dev

继续报错,搜索后知道是还需要对webpack进行一些配置。但是laravel-mix没有webpack的配置文件,查阅文档后几经尝试。最终在webpack.mix.js文件中添加如下代码:

mix.extend(
    'foo',
    new class {
        webpackRules() {
            return {
                test: /\.js/,
                use: [{
                    loader: 'babel-loader',
                    options: {
                        "babelrc": false,
                        "plugins": [
                            "dynamic-import-webpack"
                        ]
                    }
                }]
            };
        }
    }()
);

mix.js('resources/js/app.js', 'public/js')
    .sass('resources/sass/app.scss', 'public/css')
    .version().foo();

重新执行编译,报错消失。

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!