Vue中使用webpack別名的方法實(shí)例詳解
在工作中,我們經(jīng)常會(huì)寫(xiě)出這種代碼:
import MHeader from '../../components/m-header/m-header' @import "../../common/stylus/variable" @import "../../common/stylus/mixin"
即,需要引入公共文件,但是公共文件的文件路徑里當(dāng)前文件很遠(yuǎn),那么就會(huì)形成上面示例中的那種路徑很長(zhǎng)的情況。
而因?yàn)槲募夸浭羌s定俗成的,不可輕易更改,無(wú)法修改相對(duì)路徑。那么該怎么辦呢?
大家都知道,Vue中的js可以通過(guò)配置webpack別名(alias)來(lái)避免一長(zhǎng)串的路徑引用,即:
// target import MHeader from 'components/m-header/m-header' //webpack.base.conf.js alias: { '@': resolve('src'), 'common': resolve('src/common'), 'components': resolve('src/components') }
但是,如果直接把這種方法用在css中,則會(huì)報(bào)錯(cuò):
@import "common/stylus/variable" // error @import "common/stylus/mixin" // error
其實(shí),這種方法沒(méi)有錯(cuò),只不過(guò)webpack對(duì)css的處理不同于js。
在js中,webpack對(duì)路徑進(jìn)行處理時(shí),自動(dòng)將沒(méi)有路徑標(biāo)識(shí)(/ ,./,../)的第一個(gè)文件夾名當(dāng)做webpack別名處理。如,第一個(gè)文件夾名為components,那么webpack會(huì)自動(dòng)在alias中搜索有沒(méi)有對(duì)應(yīng)的別名,如果有,則直接替換路徑;沒(méi)有則報(bào)錯(cuò)。
在css中,webpack正常情況下,不會(huì)對(duì)路徑進(jìn)行處理。如果你想讓webpack對(duì)路徑進(jìn)行處理,那么,可以在路徑前標(biāo)識(shí)~,如下:
@import "~common/stylus/variable" @import "~common/stylus/mixin"
相當(dāng)于通過(guò)添加~表示common是webpack別名而不是表示一個(gè)文件夾名。
正確使用webapck別名可以大大縮短引入文件的時(shí)間。
總結(jié)
以上所述是小編給大家介紹的Vue中使用webpack別名的方法實(shí)例詳解,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
淺析Vue下的components模板使用及應(yīng)用
這篇文章主要介紹了Vue下的components模板的使用及應(yīng)用,本文通過(guò)代碼介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-11-11electron實(shí)現(xiàn)打印功能支持靜默打印、無(wú)感打印
使用electron開(kāi)發(fā)應(yīng)用遇到了打印小票的功能,實(shí)現(xiàn)途中還是幾經(jīng)波折,下面這篇文章主要給大家介紹了關(guān)于electron實(shí)現(xiàn)打印功能支持靜默打印、無(wú)感打印的相關(guān)資料,需要的朋友可以參考下2023-12-12vue+element+electron仿微信實(shí)現(xiàn)代碼
這篇文章主要介紹了vue+element+electron仿微信實(shí)現(xiàn),本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-12-12解決vue cli4升級(jí)sass-loader(v8)后報(bào)錯(cuò)問(wèn)題
這篇文章主要介紹了解決vue cli4升級(jí)sass-loader(v8)后報(bào)錯(cuò)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-07-07Vue3動(dòng)態(tài)路由(響應(yīng)式帶參數(shù)的路由)變更頁(yè)面不刷新的問(wèn)題解決辦法
問(wèn)題來(lái)源是因?yàn)槲业拈_(kāi)源項(xiàng)目Maple-Boot項(xiàng)目的網(wǎng)站前端,因?yàn)轫?xiàng)目主打的內(nèi)容發(fā)布展示,所以其中的內(nèi)容列表頁(yè)會(huì)根據(jù)不同的菜單進(jìn)行渲染不同的路由,本文降介紹Vue3動(dòng)態(tài)路由變更頁(yè)面不刷新的問(wèn)題解決辦法,需要的朋友可以參考下2024-07-07優(yōu)雅的elementUI table單元格可編輯實(shí)現(xiàn)方法詳解
這篇文章主要介紹了優(yōu)雅的elementUI table單元格可編輯實(shí)現(xiàn)方法詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-12-12vue iview實(shí)現(xiàn)動(dòng)態(tài)路由和權(quán)限驗(yàn)證功能
這篇文章主要介紹了vue iview實(shí)現(xiàn)動(dòng)態(tài)路由和權(quán)限驗(yàn)證功能,動(dòng)態(tài)路由控制分為兩種:一種是將所有路由數(shù)據(jù)存儲(chǔ)在本地文件中,另一種則是本地只存儲(chǔ)基本路由,具體內(nèi)容詳情大家參考下此文2018-04-04vue 組件開(kāi)發(fā)原理與實(shí)現(xiàn)方法詳解
這篇文章主要介紹了vue 組件開(kāi)發(fā)原理與實(shí)現(xiàn)方法,結(jié)合實(shí)例形式詳細(xì)分析了vue.js組件開(kāi)發(fā)的原理與實(shí)現(xiàn)方法,需要的朋友可以參考下2019-11-11解決elementui導(dǎo)航折疊卡頓的問(wèn)題
這篇文章主要介紹了解決elementui導(dǎo)航折疊卡頓的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07vue2 使用@vue/composition-api依賴(lài)包 編譯、打包各種報(bào)錯(cuò)問(wèn)題分析
由于package.json 文件中 vue、vue-template-compiler 版本號(hào)前面 多了個(gè) ^ 導(dǎo)致實(shí)際導(dǎo)入時(shí),node_module中的 vue 版本可能被升級(jí)為 2.7.x,這篇文章主要介紹了vue2 使用@vue/composition-api依賴(lài)包 編譯、打包各種報(bào)錯(cuò)問(wèn)題分析,需要的朋友可以參考下2023-01-01