我正在使用 Webpack 4.43、Vue 2.6.11 和 Vue Router 3.1.6
Webpack 生成一个包含bundle.js
和index.html
的dist
文件夹。
如果我通过应用程序链接导航到嵌套页面,一切正常,但是如果我尝试重新加载嵌套页面,index.html
无法加载bundle.js
,因为它尝试在嵌套页面级别找到它。例如,如果我去localhost:8080/fr/contact
它会尝试加载localhost:8080/fr/bundle.js
我看过许多其他相关主题,但没有人给出真正的答案。有人有解决方案吗?
编辑:不知道它是否有帮助,但我刚刚意识到即使我通过router-links
到达它们,图像也不会在嵌套页面中加载。同样的问题:它寻找localhost:8080/fr/my-image.png
而不是localhost:8080/my-image.png
最后通过在我的 Webpack 配置(不是 Vue 配置(中设置publicPath: '/'
来解决它。下面是它的外观:
module.exports = {
...
output: {
filename: 'bundle.js',
path: path.resolve(__dirname, 'dist'),
publicPath: '/'
},
...
}