如何使用 Laravel Mix 将 Vue 块文件放在 public/js 中?
Posted
技术标签:
【中文标题】如何使用 Laravel Mix 将 Vue 块文件放在 public/js 中?【英文标题】:How do I put Vue chunk files in public/js with Laravel Mix? 【发布时间】:2020-05-14 10:15:35 【问题描述】:我有一个 Laravel 和 Vue 项目,我在其中使用 Vue 中的动态 import
函数调用将我的组件分块到单独的文件中。
一切正常,但是 Vue 块文件(例如,0.js
、1.js
等)被直接放在 public
目录下,而不是在 public/js
下,app.js
所在的位置是。
这是我的 Laravel Mix 文件:
const mix = require('laravel-mix');
mix.js('resources/js/app.js', 'public/js/')
.sass('resources/sass/vendor.scss', 'public/css/')
.sass('resources/sass/app.scss', 'public/css/')
.version();
每次构建时,我需要更改/添加什么以使 Vue 块文件自动放置在 public/js
中,而不是直接放在 public
目录下?谢谢。
【问题讨论】:
我添加了完全相同的东西,我是 vue 和 laravel-mix 概念的新手。如果我需要在生产中部署应用程序,我是否需要进行 npm install 和 npm run prod ?我在想 app.js 包含块文件 【参考方案1】:你可以像下面这样在 webpack 中添加路径
mix.webpackConfig(
output:
chunkFilename: 'js/chunks/[name].js',//replace with your path
,
);
查看GitHub issue了解更多信息
【讨论】:
工作就像一个魅力!谢谢。以上是关于如何使用 Laravel Mix 将 Vue 块文件放在 public/js 中?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Laravel Mix 中修改 Vue Loader 设置?
带有 laravel-mix 的 vue-loader 15
Laravel mix 在 vue 组件中看不到 img 元素
在 Laravel Mix 中使用 extract() 时 Vue 未加载
Laravel Mix 中的 Bootstrap-Vue CSS 编译
Vue - 由于 webpack 版本(vue-cli-service、laravel-mix、webpack)导致 npm run serve 命令崩溃