亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

詳解webpack中的publicpath

 更新時(shí)間:2024年01月25日 16:18:57   作者:前端?賈公子  
這篇文章主要介紹了webpack中的publicpath,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧

webpack中的publicpath

當(dāng)你的項(xiàng)目是放在服務(wù)器根目錄的時(shí)候,publicpath=“/”
當(dāng)你的項(xiàng)目是放在服務(wù)器根目錄的某個(gè)文件的時(shí)候,publicpath=“/xxx”
如下圖

outPut中的publicPath

默認(rèn)值: 空字符串。

  publicPath是非常有必要配置的,他是項(xiàng)目中引入靜態(tài)資源(js、css)時(shí)的基礎(chǔ)路徑。

例如:outPut.publicPath = '/dist/';

在使用html - webpack - plugin插件打包后的html文件(下圖)可以看到,引入js文件的路徑為“publicPath + 靜態(tài)資源“。敲黑板劃重點(diǎn),這里publicPath應(yīng)該寫(xiě)“以根目錄的方式表示的路徑,如:/dist/”或者是絕對(duì)路徑,不應(yīng)該是相對(duì)路徑。因?yàn)閷㈧o態(tài)資源放在CDN上時(shí),使用相對(duì)路徑是無(wú)法訪問(wèn)到資源的。如果不設(shè)置pablicPath行不行,答案是不行。不設(shè)置的話默認(rèn)取值為空字符串(pablicPath: ' '),那么使用html - webpack - plugin打包后的html中引入的js路徑為 src = "../folder1.a095318635a306de0d2e.js",對(duì),成了相對(duì)路徑了。所以如果在生產(chǎn)環(huán)境上,publicPath設(shè)置成絕對(duì)路徑最好。

webpack-dev-server中的publicPath

默認(rèn)值:‘/’。注意,如果你output和devServer中都沒(méi)有配置publicPath,那么devServer的publicPath默認(rèn)值為‘/’;但是如果output中配了publicPath,devServer中沒(méi)配,那么devServer中publicPath的默認(rèn)值以output中的為準(zhǔn)。

  在開(kāi)發(fā)階段,我們要用devServer啟動(dòng)一個(gè)開(kāi)發(fā)服務(wù)器,這里也有一個(gè)publicPath需要配置。webpack-dev-server打包的文件是放在內(nèi)存中的而不是本地上,這些打包后的資源對(duì)外的根目錄就是publicPath。

例如:

devServer: {
  ...
  publicPath: '/dist/'    
}

那么我們可以在瀏覽器中輸入,http://localhost:9000/dist/  +  資源名,就可以訪問(wèn)到該資源(下圖)。注意:devServer中的publicPath需要跟outPut中的一致,或則不設(shè)置publicPath,他會(huì)默認(rèn)與output中的一致

斜杠/的含義

配置中/代表url根路徑,例如http://localhost:8080/dist/js/test.js中的http://localhost:8080/

常見(jiàn)問(wèn)題:

 瀏覽器打開(kāi)http://localhost:9000/index.html時(shí)頁(yè)面空白。這是因?yàn)閛utput與devServer中的publicPath不一致,導(dǎo)致資源沒(méi)有引入進(jìn)頁(yè)面里。

例子:

假如你的配置如下就會(huì)出現(xiàn)頁(yè)面空白的問(wèn)題

output: {
  ...
  publicPath: '/dist/'        
}
devServer: {
  ...
  publicPath: '/assets/'    
}

html-webpack-plugin插件在打包html(下圖)時(shí),里面引入js文件的路徑會(huì)是src="/dist/資源名" 。但是http://localhost:9000/dist/folder1.0bad1ca562f90da47034.js是引入不到該資源的,而http://localhost:9000/assets/folder1.0bad1ca562f90da47034.js可以引入到該資源。體會(huì)下這句話,"開(kāi)發(fā)環(huán)境時(shí),用webpack-dev-server打包的資源是存放在devServer.publicPath路徑下",你就會(huì)明白了。所以output和devServer中的publicPath需要一致。

webpack中 publicPath 跟 path 的區(qū)別

自己發(fā)現(xiàn),在寫(xiě)webpack.config的時(shí)候,output中為什么寫(xiě)了path,還要寫(xiě)publicPath,這兩個(gè)有什么區(qū)別呢?

首先,path的作用是什么?

就是存放生成的bundle.js地方。

那么bundle.js怎么用呢?

我們?cè)趇ndex.html中script引入bundle.js

現(xiàn)在有個(gè)問(wèn)題,如何寫(xiě)這個(gè)路徑?

單單一個(gè)path,咱們能不能取到這個(gè)文件呢?
我測(cè)試了一下。不能取到。。

那怎么辦?

此時(shí)就引入一個(gè)publicPath,這里寫(xiě)的路徑才讓你在index.html中引入的到。

那么問(wèn)題來(lái)了,那寫(xiě)path有什么用呢?
反正在我的項(xiàng)目沒(méi)有寫(xiě)這個(gè)屬性。。直接publicPath

到此這篇關(guān)于webpack的publicpath的文章就介紹到這了,更多相關(guān)webpack的publicpath內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • javascript去掉代碼里面的注釋

    javascript去掉代碼里面的注釋

    這篇文章主要介紹了javascript去掉代碼里面的注釋的方法和具體代碼,有需要的小伙伴可以參考下。
    2015-07-07
  • 異步安全加載javascript文件的方法

    異步安全加載javascript文件的方法

    這篇文章主要介紹了異步安全加載javascript文件的方法,實(shí)例分析了javascript實(shí)現(xiàn)文件異步加載的具體技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-07-07
  • JavaScript實(shí)現(xiàn)Iterator模式實(shí)例分析

    JavaScript實(shí)現(xiàn)Iterator模式實(shí)例分析

    這篇文章主要介紹了JavaScript實(shí)現(xiàn)Iterator模式,實(shí)例分析了Iterator模式的相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2015-06-06
  • js讀取注冊(cè)表的鍵值示例

    js讀取注冊(cè)表的鍵值示例

    讀取注冊(cè)表的鍵值的方法有很多,在本文將為大家詳細(xì)介紹下使用js如何實(shí)現(xiàn)注冊(cè)表的鍵值讀取,感興趣的朋友可以參考下
    2013-09-09
  • 用Javascript實(shí)現(xiàn)Windows任務(wù)管理器的代碼

    用Javascript實(shí)現(xiàn)Windows任務(wù)管理器的代碼

    在Windows系統(tǒng)上,自從98系統(tǒng)以來(lái)就提供了腳本宿主(Windows Scripting Host 簡(jiǎn)稱WSH)的功能,WSH可以加載并運(yùn)行JS和VBS腳本,并支持調(diào)用系統(tǒng)的COM組件,在COM組件的支持下腳本可以輕松實(shí)現(xiàn)非常強(qiáng)大的功能
    2012-03-03
  • JavaScript的parseInt 進(jìn)制問(wèn)題

    JavaScript的parseInt 進(jìn)制問(wèn)題

    今天在整理以前寫(xiě)過(guò)的一段根據(jù)周期值自動(dòng)計(jì)算下次執(zhí)行日期的js代碼,發(fā)現(xiàn)一bug,我使用parseInt對(duì)源數(shù)據(jù)串進(jìn)行轉(zhuǎn)換,當(dāng)輸入類似:2009-05-05時(shí),parseInt將把串的05做8進(jìn)制轉(zhuǎn)換,這樣結(jié)果自然就不對(duì)了。
    2009-05-05
  • promise封裝wx.request的方法

    promise封裝wx.request的方法

    這篇文章主要介紹了promise封裝wx.request的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-05-05
  • Lombok實(shí)現(xiàn)方式JSR-269

    Lombok實(shí)現(xiàn)方式JSR-269

    Lombok的出現(xiàn)幫助開(kāi)發(fā)人員在開(kāi)發(fā)工程中消除了大部分冗余代碼:繁瑣的get、set方法甚至建造者模式,今天通過(guò)本文給大家分享Lombok實(shí)現(xiàn)方式JSR-269的相關(guān)知識(shí),感興趣的朋友一起看看吧
    2021-06-06
  • javascript上傳圖片前預(yù)覽圖片兼容大多數(shù)瀏覽器

    javascript上傳圖片前預(yù)覽圖片兼容大多數(shù)瀏覽器

    上傳圖片前預(yù)覽圖片這種效果應(yīng)用比較廣泛,實(shí)現(xiàn)的方也大同小異,下面為大家介紹下,在javascript中是如何實(shí)現(xiàn)的,感興趣的朋友可以參考下
    2013-10-10
  • 原生JS進(jìn)行前后端同構(gòu)

    原生JS進(jìn)行前后端同構(gòu)

    本文通過(guò)實(shí)例給大家分享了原生JS進(jìn)行前后端同構(gòu)的相關(guān)知識(shí)點(diǎn)以及相關(guān)代碼,有需要的朋友參考學(xué)習(xí)下。
    2018-04-04

最新評(píng)論