webpack打包后index.html引用文件地址问题小结
在前端开发中, 属性指定的相对路径是相对于当前 HTML 文件的路径,而不是相对于网站的根目录。这种相对路径的解析方式是浏览器的行为。
当浏览器解析 HTML 文件中的 标签时,它会根据相对路径来构建请求 URL。如果你在 HTML 文件中使用了相对路径,浏览器会将这些路径解释为相对于当前 HTML 文件所在位置的路径。
例如,假设你的 HTML 文件位于 ,而在该 HTML 文件中有如下的 标签:
这样浏览器就会从网站的根目录开始解析路径,而不是相对于当前 HTML 文件的路径。请根据需要选择适合的路径格式来引用你的脚本文件。
在 Webpack 中设置 的目的确实是为了定义输出资源文件的公共 URL 前缀。然而,当您在 HTML 文件中直接引用资源文件时,使用的是相对于当前 HTML 页面的路径。这意味着,如果您在 HTML 中这样写:
这里的路径是相对于当前 HTML 文件的。如果 HTML 文件位于网站的根目录,那么资源文件的路径就是相对于根目录下的 文件夹。在这种情况下,即使您在 Webpack 配置中设置了 为 ,它也不会影响 HTML 中硬编码的相对路径。
Webpack 的 主要影响的是 Webpack 打包后的输出文件路径,特别是当您通过 Webpack 的 配置指定了一个输出路径时。例如:
output: {
path: path.resolve(__dirname, 'dist'),
filename: '[name].js',
publicPath: 'http://www.jb51.net/javascript/' // 这里设置为当前目录
}
在上面的配置中,Webpack 会将打包后的文件放在 目录下,而 指定了这些文件的公共 URL 前缀。但是,这个 仅用于 Webpack 在生成资源链接时的前缀,比如在 HTML 文件中自动生成的 script 和 link 标签的 属性。如果您手动编写 HTML 并指定资源路径,那么您需要确保路径正确,并且与服务器上的资源实际位置相匹配。
如果您希望 Webpack 自动处理资源路径,可以使用 来生成 HTML 文件,并通过该插件配置 ,这样插件会自动为您生成正确的资源链接。
const HtmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {
// ... 其他配置
plugins: [
new HtmlWebpackPlugin({
publicPath: 'http://www.jb51.net/javascript/', // 这里设置为当前目录
// ... 其他配置
}),
],
// ... 其他配置
};
使用 时,它会根据您提供的 自动在生成的 HTML 文件中添加正确的资源路径。如果您手动编写 HTML 并直接引用资源,那么您需要确保路径正确,并且与服务器上的资源实际位置相匹配,而不受 Webpack 配置的影响。
到此这篇关于webpack打包后index.html引用文件地址问题的文章就介绍到这了,更多相关webpack打包index.html引用文件地址内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:
- .NET Core系列之MemoryCache 初识
- 007手机一键Root(安机网一键Root) v3.0 官方最新版 一键ROOT您的Android手机
- 12306密码被盗了怎么办?12306密码外泄解决方法
- 12个字的qq网名
- 150M迷你型无线路由器怎么设置?
- 192.168.1.1打不开怎么办?路由器192.168.1.1打不开的原因以及解决办法
- 2011年电子报合订本 电子报 编辑部 中文 PDF版 [84M]
- 2015年1月15日小米新旗舰发布会现场图文直播
- 2016.3.1vivo Xplay5新品发布会现场视频直播 优酷直播
- 2016华为P9发布会视频直播地址 4月15日华为P9国行发布会直播