欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

webpack打包后index.html引用文件地址問題小結(jié)

 更新時(shí)間:2024年05月06日 10:59:18   作者:yusirxiaer  
在前端開發(fā)中,src 屬性指定的相對路徑是相對于當(dāng)前 HTML 文件的路徑,而不是相對于網(wǎng)站的根目錄,這篇文章主要介紹了webpack打包后index.html引用文件地址問題,需要的朋友可以參考下

在前端開發(fā)中,src 屬性指定的相對路徑是相對于當(dāng)前 HTML 文件的路徑,而不是相對于網(wǎng)站的根目錄。這種相對路徑的解析方式是瀏覽器的行為。

當(dāng)瀏覽器解析 HTML 文件中的 <script> 標(biāo)簽時(shí),它會根據(jù)相對路徑來構(gòu)建請求 URL。如果你在 HTML 文件中使用了相對路徑,瀏覽器會將這些路徑解釋為相對于當(dāng)前 HTML 文件所在位置的路徑。

例如,假設(shè)你的 HTML 文件位于 http://localhost:8080/index.html,而在該 HTML 文件中有如下的 <script> 標(biāo)簽:

<script defer="defer" src="js/chunk-vendors.10fd6bed.js"></script>
<script defer="defer" src="js/app.768bed6f.js"></script>
  • 這里的 src 屬性指定的路徑 js/chunk-vendors.10fd6bed.jsjs/app.768bed6f.js 是相對于當(dāng)前 HTML 文件的路徑。瀏覽器會將這些路徑解析為:
  • js/chunk-vendors.10fd6bed.js 相對于 http://localhost:8080/index.html 的路徑是 http://localhost:8080/js/chunk-vendors.10fd6bed.jsjs/app.768bed6f.js 相對于 http://localhost:8080/index.html 的路徑是 http://localhost:8080/js/app.768bed6f.js

如果你希望確保腳本文件的路徑是相對于網(wǎng)站根目錄的絕對路徑,可以使用以斜杠 / 開頭的路徑來指定:

<script defer="defer" src="/js/chunk-vendors.10fd6bed.js"></script>
 <script defer="defer" src="/js/app.768bed6f.js"></script>

這樣瀏覽器就會從網(wǎng)站的根目錄開始解析路徑,而不是相對于當(dāng)前 HTML 文件的路徑。請根據(jù)需要選擇適合的路徑格式來引用你的腳本文件。

在 Webpack 中設(shè)置 publicPath 的目的確實(shí)是為了定義輸出資源文件的公共 URL 前綴。然而,當(dāng)您在 HTML 文件中直接引用資源文件時(shí),使用的是相對于當(dāng)前 HTML 頁面的路徑。這意味著,如果您在 HTML 中這樣寫:

<script src="js/chunk-vendors.10fd6bed.js"></script>

這里的路徑是相對于當(dāng)前 HTML 文件的。如果 HTML 文件位于網(wǎng)站的根目錄,那么資源文件的路徑就是相對于根目錄下的 js 文件夾。在這種情況下,即使您在 Webpack 配置中設(shè)置了 publicPath'./',它也不會影響 HTML 中硬編碼的相對路徑。

Webpack 的 publicPath 主要影響的是 Webpack 打包后的輸出文件路徑,特別是當(dāng)您通過 Webpack 的 output 配置指定了一個(gè)輸出路徑時(shí)。例如:

output: {
  path: path.resolve(__dirname, 'dist'),
  filename: '[name].js',
  publicPath: './' // 這里設(shè)置為當(dāng)前目錄
}

在上面的配置中,Webpack 會將打包后的文件放在 dist 目錄下,而 publicPath: './' 指定了這些文件的公共 URL 前綴。但是,這個(gè) publicPath 僅用于 Webpack 在生成資源鏈接時(shí)的前綴,比如在 HTML 文件中自動(dòng)生成的 script 和 link 標(biāo)簽的 href 屬性。如果您手動(dòng)編寫 HTML 并指定資源路徑,那么您需要確保路徑正確,并且與服務(wù)器上的資源實(shí)際位置相匹配。

如果您希望 Webpack 自動(dòng)處理資源路徑,可以使用 html-webpack-plugin 來生成 HTML 文件,并通過該插件配置 publicPath,這樣插件會自動(dòng)為您生成正確的資源鏈接。

const HtmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {
  // ... 其他配置
  plugins: [
    new HtmlWebpackPlugin({
      publicPath: './', // 這里設(shè)置為當(dāng)前目錄
      // ... 其他配置
    }),
  ],
  // ... 其他配置
};

使用 html-webpack-plugin 時(shí),它會根據(jù)您提供的 publicPath 自動(dòng)在生成的 HTML 文件中添加正確的資源路徑。如果您手動(dòng)編寫 HTML 并直接引用資源,那么您需要確保路徑正確,并且與服務(wù)器上的資源實(shí)際位置相匹配,而不受 Webpack publicPath 配置的影響。

到此這篇關(guān)于webpack打包后index.html引用文件地址問題的文章就介紹到這了,更多相關(guān)webpack打包index.html引用文件地址內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • JavaScript實(shí)現(xiàn)下拉列表效果

    JavaScript實(shí)現(xiàn)下拉列表效果

    這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)下拉列表效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-09-09
  • js clearInterval()方法的定義和用法

    js clearInterval()方法的定義和用法

    clearInterval()方法能夠取消setInterval()方法設(shè)置的定時(shí)器,本文給大家詳解clearInterval()方法的定義和用法,感興趣的朋友參考下。
    2015-11-11
  • webpack 5 mode的作用和區(qū)別解析

    webpack 5 mode的作用和區(qū)別解析

    Webpack 5 是一款強(qiáng)大的模塊打包工具,可用于將許多分散的模塊按照依賴關(guān)系打包成一個(gè)(或多個(gè))bundle,這篇文章給大家介紹webpack 5 mode的作用和區(qū)別解析,感興趣的朋友跟隨小編一起看看吧
    2024-01-01
  • JS設(shè)置cookie、讀取cookie

    JS設(shè)置cookie、讀取cookie

    js設(shè)置cookie有很多種方法,包括JS設(shè)置cookie、讀取cookie,工作中常會用到!下面是詳細(xì)代碼,感興趣的小伙伴們可以參考一下
    2016-02-02
  • JavaScript canvas實(shí)現(xiàn)加載圖片

    JavaScript canvas實(shí)現(xiàn)加載圖片

    這篇文章主要為大家詳細(xì)介紹了JavaScript canvas實(shí)現(xiàn)加載圖片,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • 使用JS編寫的隨機(jī)抽取號碼的小程序

    使用JS編寫的隨機(jī)抽取號碼的小程序

    這篇文章主要介紹了使用JS編寫的隨機(jī)抽取號碼的小程序功能,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2017-08-08
  • 引入JS文件IE6報(bào)語法錯(cuò)誤或缺少對象問題的解決方法

    引入JS文件IE6報(bào)語法錯(cuò)誤或缺少對象問題的解決方法

    引入JS文件IE6報(bào)錯(cuò)或缺少對象問題想必很多朋友都有遇到過吧,這個(gè)問題在于文件編碼上,下面為大家介紹下比較不錯(cuò)的解決方法
    2014-01-01
  • JavaScript 題型問答有答案參考

    JavaScript 題型問答有答案參考

    JavaScript 題型問答有答案參考,都是一些開發(fā)中容易碰到的問題。
    2010-02-02
  • JavaScript使用多線程實(shí)現(xiàn)一個(gè)大文件上傳

    JavaScript使用多線程實(shí)現(xiàn)一個(gè)大文件上傳

    這篇文章主要為大家詳細(xì)介紹了JavaScript使用多線程實(shí)現(xiàn)一個(gè)大文件上傳的相關(guān)知識,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2024-11-11
  • Servlet返回的數(shù)據(jù)js解析2種方法

    Servlet返回的數(shù)據(jù)js解析2種方法

    這篇文章主要介紹了Servlet返回的數(shù)據(jù)js解析2種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12

最新評論