Failed to load resource: net::ERR_FILE_NOT_FOUND问题解决

publicPath是告诉 webpack 打包后的文件在浏览器中的访问路径。当你设置 publicPath: './' 时,实际上是将构建后的资源相对于当前路径进行引用。

  1. 相对路径引用: 默认情况下,Vue CLI 生成的项目会把所有静态资源引用路径设置为绝对路径,即 /static/...。这适用于大多数情况,尤其是当你的项目部署在服务器的根目录时。

  2. publicPath: './' 的作用: 当你把 publicPath 设置为 ./ 时,它告诉 webpack 在引用资源时使用相对路径。这样,在构建后的 index.html 文件中,静态资源的引用路径将是相对于当前路径的,而不是绝对路径。这对于一些特定的部署场景(如部署在服务器的子目录)可能更合适。

  3. 不用改变 index.html 的引用路径: 由于 publicPath 的设置,构建后的资源引用路径已经是相对路径了,所以你不需要手动改变 index.html 文件中的引用路径,这由 webpack 自动处理了。

  4. 在vue.config.js里配置

    module.exports = defineConfig({ publicPath: './', // 其他配置... });

总的来说,设置 publicPath: './' 的效果就是让构建后的资源使用相对路径引用,而不是绝对路径。这对于一些特殊部署场景或需要相对路径引用资源的情况非常有用。

你可能感兴趣的:(前端,vue.js,webpack,javascript)