Vue全局使用less樣式,組件使用全局樣式文件中定義的變量操作
當(dāng)你想要在vue項(xiàng)目的一個組件中使用全局樣式文件中定義好的變量,此時只在main.js中import是不行的。
目錄結(jié)構(gòu)如下:
即在MHeader.vue中想要使用src下的less下的variables.less文件中定義好的變量。
此時,只用import在main.js中導(dǎo)入variables.less文件是會報(bào)錯的。
解決辦法:
1、安裝less和less-loader
npm i less less-loader -D
2、要想全局使用還需使用一個插件( sass-resources-loader ),沒有寫錯,就是sass
npm i sass-resources-loader -D
3、安裝完sass-resources-loader后,配置webpack,找到build/utils.js文件,在cssLoaders函數(shù)中添加使用全局less函數(shù)
// 增加全局使用less函數(shù) function lessResourceLoader() { var loaders = [ cssLoader, 'less-loader', { loader: 'sass-resources-loader', options: { resources: [ path.resolve(__dirname, '../src/assets/less/variables.less'), //定義全局變量的文件路徑 ] } } ]; if (options.extract) { return ExtractTextPlugin.extract({ use: loaders, fallback: 'vue-style-loader' }) } else { return ['vue-style-loader'].concat(loaders) } }
并在return中用你定義的lessResourceLoader函數(shù)替換less: generateLoaders('less')這個函數(shù)。
return { css: generateLoaders(), postcss: generateLoaders(), less: lessResourceLoader('less'), sass: generateLoaders('sass', { indentedSyntax: true }), scss: generateLoaders('sass'), stylus: generateLoaders('stylus'), styl: generateLoaders('stylus') }
4、完成之后就可以重新運(yùn)行項(xiàng)目了
npm run dev
補(bǔ)充知識:Vue less使用scope時滲入修改子組件樣式
我就廢話不多說了,大家還是直接看代碼吧~
@aaa: ~'>>>'; .wrap { @{aaa} .component1 { width: 120px; } /deep/ .component2 { width: 130px; } }
以上這篇Vue全局使用less樣式,組件使用全局樣式文件中定義的變量操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue3+element-plus?Dialog對話框的使用與setup?寫法的用法
這篇文章主要介紹了vue3+element-plus?Dialog對話框的使用?與?setup?寫法的使用,本文通過兩種方式結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-04-04使用vue構(gòu)建移動應(yīng)用實(shí)戰(zhàn)代碼
本篇文章主要介紹了使用vue構(gòu)建移動應(yīng)用實(shí)戰(zhàn)代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-08-08vue.js實(shí)現(xiàn)雙擊放大預(yù)覽功能
這篇文章主要為大家詳細(xì)介紹了vue.js實(shí)現(xiàn)雙擊放大預(yù)覽功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-06-06vue項(xiàng)目打包后,由于html被緩存導(dǎo)致出現(xiàn)白屏的處理方案
這篇文章主要介紹了vue項(xiàng)目打包后,由于html被緩存導(dǎo)致出現(xiàn)白屏的處理方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-03-03vue2.0如何實(shí)現(xiàn)echarts餅圖(pie)效果展示
這篇文章主要介紹了vue2.0如何實(shí)現(xiàn)echarts餅圖(pie)效果展示,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-10-10Vue.js實(shí)現(xiàn)實(shí)例搜索應(yīng)用功能詳細(xì)代碼
本文給大家分享Vue.js實(shí)現(xiàn)實(shí)例搜索應(yīng)用功能詳細(xì)代碼,非常不錯,感興趣的朋友參考下吧2017-08-08