最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue項(xiàng)目如何配置public靜態(tài)資源路徑訪問(wèn)

 更新時(shí)間:2023年11月09日 14:54:24   作者:crayon-shin-chan  
這篇文章主要介紹了vue項(xiàng)目如何配置public靜態(tài)資源路徑訪問(wèn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

vue項(xiàng)目配置public靜態(tài)資源路徑訪問(wèn)

一般的vue項(xiàng)目都有一個(gè)初始index.html,而其他js、css都是這個(gè)html引入的,默認(rèn)情況下使用絕對(duì)路徑引入,如/js/app.js

這樣就有一個(gè)問(wèn)題,靜態(tài)資源經(jīng)常要部署在不同的上下文路徑下,如nginx將vue靜態(tài)資源部署在/static下

此時(shí)使用絕對(duì)路徑訪問(wèn)不到index.html引入的js、css等,而相對(duì)路徑是不變的

解決

vue.config.js

module.exports = {  
publicPath: ''
???????}

配置publicPath即可,而這個(gè)的默認(rèn)值是'/'

vue打包后靜態(tài)資源路徑錯(cuò)誤的問(wèn)題

vue項(xiàng)目完成的最后一步就是打包部署上線,但是打包部署的過(guò)程往往不是那么一帆風(fēng)順的,現(xiàn)將遇到問(wèn)題和解決方案記錄如下。

圖片路徑問(wèn)題

起因:

頁(yè)面中引入資源的方式往往有如下幾種

  • * HTML標(biāo)簽中直接引入圖片, 如 <img src="../assets/images/index.png">
  • * JS代碼中定義資源路徑屬性,如src: require('../assets/images/index.png')
  • * CSS代碼中定義資源為背景圖片,如background-image: url("../assets/images/indexpng")

上述三種資源加載方式還是有所區(qū)別的。

前兩種無(wú)論圖片大小,都會(huì)使用url-loader加載器將其轉(zhuǎn)化為base64編碼的靜態(tài)資源,而第三種方式則會(huì)根據(jù)webpack中配置的limit參數(shù),動(dòng)態(tài)選擇符合大小要求的圖片進(jìn)行轉(zhuǎn)碼,此時(shí)則會(huì)導(dǎo)致不符合大小選擇的圖

片加載失敗,同時(shí)報(bào)出如下錯(cuò)誤。

localhost:8080/dist/static/css/static/img/index.254207f.png

解決:

1.保證打包資源路徑可用,首先要做的是配置build.js執(zhí)行時(shí)的資源參數(shù),打開(kāi)config目錄下的index.js

看代碼:

  	index: path.resolve(__dirname, '../dist/index.html'),
    assetsRoot: path.resolve(__dirname, '../dist'),
    assetsSubDirectory: 'static',
    assetsPublicPath: './',  // 修改為'./'滿足資源相對(duì)路徑

2.保證資源轉(zhuǎn)碼條件符合。這塊主要涉及到加載用到的加載器url-loader, 需要保證其配置可執(zhí)行。打開(kāi)build目錄下的

webpack.base.conf.js

看代碼:

{
 test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
  loader: 'url-loader',
  options: {
    limit: 10000,  // 該限制為小于10KB的圖片,系統(tǒng)默認(rèn)轉(zhuǎn)碼為base64
    name: utils.assetsPath('img/[name].[hash:7].[ext]')
  }
},

依賴資源路徑問(wèn)題(字體、圖標(biāo))

起因:

系統(tǒng)采用vue + elementUI,但是發(fā)現(xiàn)打包之后的字體文件和圖標(biāo)都不能正常顯示,報(bào)錯(cuò)如下:

解決:

打開(kāi)build目錄下utils.js,添加路徑配置 publicPath: '../../',

看代碼:

// Extract CSS when that option is specified
// (which is the case during production build)
 if (options.extract) {
   return ExtractTextPlugin.extract({
     use: loaders,
     fallback: 'vue-style-loader',
     publicPath: '../../' // 解決element UI打包后字體文件丟失
   })
 } else {
   return ['vue-style-loader'].concat(loaders)
 }
}

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 使用Vue后如何針對(duì)搜索引擎做SEO優(yōu)化

    使用Vue后如何針對(duì)搜索引擎做SEO優(yōu)化

    本文介紹了Vue.js在SEO優(yōu)化方面的挑戰(zhàn),并提供了一些方法來(lái)解決這些問(wèn)題,包括使用服務(wù)器端渲染、預(yù)渲染和使用VueRouter的History模式來(lái)生成靜態(tài)HTML頁(yè)面,以及添加meta信息和內(nèi)部鏈接來(lái)提高搜索引擎的索引和排名
    2025-02-02
  • Vue.js中的extend綁定節(jié)點(diǎn)并顯示的方法

    Vue.js中的extend綁定節(jié)點(diǎn)并顯示的方法

    在本篇內(nèi)容里小編給大家整理了關(guān)于Vue.js中的extend綁定節(jié)點(diǎn)并顯示的方法以及相關(guān)知識(shí)點(diǎn),需要的朋友們學(xué)習(xí)下。
    2019-06-06
  • vue遞歸組件實(shí)現(xiàn)樹(shù)形結(jié)構(gòu)

    vue遞歸組件實(shí)現(xiàn)樹(shù)形結(jié)構(gòu)

    這篇文章主要為大家詳細(xì)介紹了vue遞歸組件實(shí)現(xiàn)樹(shù)形結(jié)構(gòu),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-09-09
  • Element Plus實(shí)現(xiàn)Affix 固釘

    Element Plus實(shí)現(xiàn)Affix 固釘

    本文主要介紹了Element Plus實(shí)現(xiàn)Affix 固釘,Affix組件用于將頁(yè)面元素固定在特定可視區(qū)域,文中通過(guò)示例代碼介紹的非常詳細(xì),感興趣的小伙伴們可以參考一下
    2021-07-07
  • Vue 動(dòng)態(tài)生成數(shù)據(jù)字段的實(shí)例

    Vue 動(dòng)態(tài)生成數(shù)據(jù)字段的實(shí)例

    這篇文章主要介紹了Vue 動(dòng)態(tài)生成數(shù)據(jù)字段的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • 優(yōu)化Vue項(xiàng)目編譯文件大小的方法步驟

    優(yōu)化Vue項(xiàng)目編譯文件大小的方法步驟

    這篇文章主要介紹了優(yōu)化Vue項(xiàng)目編譯文件大小的方法步驟,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-05-05
  • Vue中el-table條件渲染防止樣式亂掉(解決方法)

    Vue中el-table條件渲染防止樣式亂掉(解決方法)

    這篇文章主要介紹了Vue中el-table條件渲染防止樣式亂掉問(wèn)題,通過(guò)使用:key="Math.random()" 可解決樣式錯(cuò)亂問(wèn)題,此key屬性是vue自帶的特殊屬性,主要用在 Vue 的虛擬 DOM 算法,在新舊 nodes 對(duì)比時(shí)辨識(shí) VNodes,依次來(lái)提升頁(yè)面渲染性能,感興趣的朋友一起看看吧
    2023-11-11
  • Vue使用vm.$set()解決對(duì)象新增屬性不能響應(yīng)的問(wèn)題

    Vue使用vm.$set()解決對(duì)象新增屬性不能響應(yīng)的問(wèn)題

    這篇文章主要介紹了Vue使用vm.$set()解決對(duì)象新增屬性不能響應(yīng)的問(wèn)題,為了解決這個(gè)問(wèn)題,Vue提供了一個(gè)特殊的方法vm.$set(object, propertyName, value),也可以使用全局的Vue.set(object, propertyName, value)方法,需要的朋友可以參考下
    2023-05-05
  • Vue數(shù)組的劫持逐步分析講解

    Vue數(shù)組的劫持逐步分析講解

    小編這次要給大家分享的是如何實(shí)現(xiàn)vue2.x數(shù)組劫持,文章內(nèi)容豐富,感興趣的小伙伴可以來(lái)了解一下,希望大家閱讀完這篇文章之后能夠有所收獲
    2023-01-01
  • vue移動(dòng)端城市三級(jí)聯(lián)動(dòng)組件使用詳解

    vue移動(dòng)端城市三級(jí)聯(lián)動(dòng)組件使用詳解

    這篇文章主要為大家詳細(xì)介紹了vue移動(dòng)端城市三級(jí)聯(lián)動(dòng)組件的使用,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-07-07

最新評(píng)論

清水县| 盘锦市| 利川市| 长汀县| 济宁市| 西丰县| 乐亭县| 禄劝| 祁门县| 铅山县| 柘城县| 和硕县| 乌鲁木齐县| 甘孜县| 陆良县| 丰县| 诸暨市| 扎鲁特旗| 府谷县| 淅川县| 清涧县| 泽普县| 永新县| 阿拉善右旗| 浮山县| 仁怀市| 长子县| 恭城| 泉州市| 宝鸡市| 张家港市| 太白县| 巴楚县| 兴安县| 宕昌县| 白朗县| 临江市| 屏东市| 浦东新区| 新巴尔虎左旗| 沽源县|