我正在用惯性js运行一个Vue应用,我的应用在web根目录下的一个文件夹里,如下图。
/
-myVueApp/
-webpack.config.js
-includes/
-js/
-pages/
在我的app.js文件中,我有这样的代码。
resolveComponent: name => import(
/* webpackChunkName: "includes/js/pages/[request]" */ `@/Pages/${name}`
).then(module => module.default)
当我构建时,文件生成在正确的目录下(myVueAppincludesjspages)。
运行应用时,浏览器直接在web根目录下寻找分块文件(includesjspages),而不是myVueApp文件夹。
Webpack.config.js、package.json都在myVueApp文件夹内,那是执行npm运行命令的地方。
(myVueAppincludesjs)中的Runtime.js文件加载得很好,但它告诉浏览器从服务器根目录下寻找分块文件,而不是myVueApp文件夹。
我可以用什么webpack设置来解决这个问题?
我试过设置根路径,但它需要一个绝对路径,当从我的windows盒子切换到Linux盒子时,这个路径就会被破坏。似乎绝对路径是相对于操作系统的,而不是服务器的根目录。
我把它解决了。我必须在webpack.config.js中设置output.publicPath="myVueApp"。