Vue中使用webpack別名的方法實例詳解
在工作中,我們經(jīng)常會寫出這種代碼:
import MHeader from '../../components/m-header/m-header' @import "../../common/stylus/variable" @import "../../common/stylus/mixin"
即,需要引入公共文件,但是公共文件的文件路徑里當前文件很遠,那么就會形成上面示例中的那種路徑很長的情況。
而因為文件目錄是約定俗成的,不可輕易更改,無法修改相對路徑。那么該怎么辦呢?
大家都知道,Vue中的js可以通過配置webpack別名(alias)來避免一長串的路徑引用,即:
// 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中,則會報錯:
@import "common/stylus/variable" // error @import "common/stylus/mixin" // error
其實,這種方法沒有錯,只不過webpack對css的處理不同于js。
在js中,webpack對路徑進行處理時,自動將沒有路徑標識(/ ,./,../)的第一個文件夾名當做webpack別名處理。如,第一個文件夾名為components,那么webpack會自動在alias中搜索有沒有對應的別名,如果有,則直接替換路徑;沒有則報錯。
在css中,webpack正常情況下,不會對路徑進行處理。如果你想讓webpack對路徑進行處理,那么,可以在路徑前標識~,如下:
@import "~common/stylus/variable" @import "~common/stylus/mixin"
相當于通過添加~表示common是webpack別名而不是表示一個文件夾名。
正確使用webapck別名可以大大縮短引入文件的時間。
總結(jié)
以上所述是小編給大家介紹的Vue中使用webpack別名的方法實例詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
vue3封裝AES(CryptoJS)前端加密解密通信代碼實現(xiàn)
防止數(shù)據(jù)被爬取,前后端傳參接收參數(shù)需要加密處理,使用AES加密,這篇文章主要給大家介紹了關于vue3封裝AES(CryptoJS)前端加密解密通信代碼實現(xiàn)的相關資料,需要的朋友可以參考下2023-12-12
Vue中通過屬性綁定為元素綁定style行內(nèi)樣式的實例代碼
這篇文章主要介紹了Vue中通過屬性綁定為元素綁定style行內(nèi)樣式,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-04-04
如何利用vue-cli監(jiān)測webpack打包與啟動時長
這篇文章主要給大家介紹了關于如何利用vue-cli監(jiān)測webpack打包與啟動時長的相關資料,文中通過實例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2022-02-02
vue3界面使用router及使用watch監(jiān)聽router的改變
vue2中使用router非常簡單,但是vue3中略微有些改變,通過本文講解下他的改變,對vue3?watch監(jiān)聽router相關知識感興趣的朋友一起看看吧2022-11-11
vue2.0嵌套路由實現(xiàn)豆瓣電影分頁功能(附demo)
這篇文章主要介紹了vue2.0嵌套路由實現(xiàn)豆瓣電影分頁功能(附demo),這里整理了詳細的代碼,有需要的小伙伴可以參考下。2017-03-03

