webpack 配置scss||less全局樣式(自定義的慎恒,vue-cli2/3)

一般的萌丈,引入全局設(shè)置的基本樣式

@import './base.scss';

這樣在引入scss文件中可以使用base里的全局變量
但是避免在資源文件中使用SASS@ import規(guī)則南窗,因為它會降低增量構(gòu)建的速度揍很。直接在webpack config 中的sassResources數(shù)組中添加導(dǎo)入的文件。
scss為例, 在自己配的webpack,和vue-cli2/3中配置全局樣式引入
sass-resources-loader也可以用來配置less

自己配的webpack中l(wèi)ess||scss

確保package.json有 node-sass 万伤,sass-loader窒悔, style-loader
安裝sass-resources-loader sass-resources-loader

cnpm i sass-resources-loader -D

再在配置中更改

module: {
    rules: [
      {
        test: /\.scss$/,
        use: [
          { loader: 'vue-style-loader' },
          { loader: 'css-loader', options: { sourceMap: true } },
          { loader: 'sass-loader', options: { sourceMap: true } },
          { loader: 'sass-resources-loader',
            options: {
              sourceMap: true,
              resources:[path.resolve(__dirname, '../src/renderer/globals.scss'),]//一定是path.resolve的絕對路徑
            }
          }
        ]
      },
}

vue-cli2中scss

安裝sass-resources-loader
修改build中的utils.js

scss: generateLoaders('sass'),
//修改為
scss: generateLoaders('sass').concat(
  {
    loader: 'sass-resources-loader',
    options: {
        //scss全局文件的路徑
      resources: path.resolve(__dirname, '../src/renderer/globals.scss')
    }
  }
),

vue-cli2中l(wèi)ess

安裝sass-resources-loader
修改build中的utils.js

less: generateLoaders('less')
//修改為
 less: generateLoaders('less').concat({
      loader: 'sass-resources-loader',
      options: {
        resources: path.resolve(__dirname, '../src/components/libs/css/skin.less')
      }
    }),

vue-cli3中scss

vue.config.js
不需要安裝sass-resources-loader
只需要確保安裝了node-sass sass-loader

module.exports = {
 css: {
        loaderOptions: {
//less: {
     //   resources: [path.resolve(__dirname, "@/assets/css/common.less")]
//}
            sass: {
                data: `
                  @import "@/src/renderer/globals.scss";
                   @import "@/src/renderer/base.scss";
                  `
            }
        }
    },
}

有些會報錯


module.exports = {
 css: {
        loaderOptions: {
            sass: {
              // data: `@import "./src/styles/main.scss";`  // 舊的寫法
              prependData: `@import "./src/styles/main.scss";`  // 新的寫法
            }
        }
    },
}
  

這樣配置后在

<style lang="scss">
    .contentTitle{
        color:$color;
    }
</style>

直接使用

vue-cli3中l(wèi)ess (方法1)

vue.config.js

cnpm i style-resources-loader -D

確保安裝了node-sass sass-loader

module.exports = {
  chainWebpack: (config) => {
    ...
      const types = ['vue-modules', 'vue', 'normal-modules', 'normal']
      types.forEach(type => addStyleResource(config.module.rule('less').oneOf(type)))
    },

   css: {
        loaderOptions: {
            less: {
                javascriptEnabled: true
            },
        }
    },
}
function addStyleResource(rule) {
    rule.use('style-resource')
        .loader('style-resources-loader')
        .options({
            patterns: [
                path.resolve(__dirname, './src/style/common.less'),
            ],
        })
}

vue-cli3中l(wèi)ess (方法2)

vue.config.js

vue add style-resources-loader 

  "style-resources-loader": {
            preProcessor: "less",
            patterns: [
                //這個是加上自己的路徑,
                // path.resolve(__dirname, "./src/style/mixin.less"),
                path.resolve(__dirname, "./src/style/_var.less"),
                path.resolve(__dirname, "./src/style/common.less")
            ]
        }

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末敌买,一起剝皮案震驚了整個濱河市简珠,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖聋庵,帶你破解...
    沈念sama閱讀 212,718評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件膘融,死亡現(xiàn)場離奇詭異,居然都是意外死亡祭玉,警方通過查閱死者的電腦和手機氧映,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,683評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來脱货,“玉大人岛都,你說我怎么就攤上這事≌窬” “怎么了臼疫?”我有些...
    開封第一講書人閱讀 158,207評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長扣孟。 經(jīng)常有香客問我烫堤,道長,這世上最難降的妖魔是什么哈打? 我笑而不...
    開封第一講書人閱讀 56,755評論 1 284
  • 正文 為了忘掉前任塔逃,我火速辦了婚禮,結(jié)果婚禮上料仗,老公的妹妹穿的比我還像新娘。我一直安慰自己伏蚊,他們只是感情好立轧,可當(dāng)我...
    茶點故事閱讀 65,862評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著躏吊,像睡著了一般氛改。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上比伏,一...
    開封第一講書人閱讀 50,050評論 1 291
  • 那天胜卤,我揣著相機與錄音,去河邊找鬼赁项。 笑死葛躏,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的悠菜。 我是一名探鬼主播舰攒,決...
    沈念sama閱讀 39,136評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼悔醋!你這毒婦竟也來了摩窃?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,882評論 0 268
  • 序言:老撾萬榮一對情侶失蹤芬骄,失蹤者是張志新(化名)和其女友劉穎猾愿,沒想到半個月后鹦聪,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,330評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡蒂秘,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,651評論 2 327
  • 正文 我和宋清朗相戀三年椎麦,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片材彪。...
    茶點故事閱讀 38,789評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡观挎,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出段化,到底是詐尸還是另有隱情嘁捷,我是刑警寧澤,帶...
    沈念sama閱讀 34,477評論 4 333
  • 正文 年R本政府宣布显熏,位于F島的核電站雄嚣,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏喘蟆。R本人自食惡果不足惜缓升,卻給世界環(huán)境...
    茶點故事閱讀 40,135評論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望蕴轨。 院中可真熱鬧港谊,春花似錦、人聲如沸橙弱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,864評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽棘脐。三九已至斜筐,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蛀缝,已是汗流浹背顷链。 一陣腳步聲響...
    開封第一講書人閱讀 32,099評論 1 267
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留屈梁,地道東北人嗤练。 一個月前我還...
    沈念sama閱讀 46,598評論 2 362
  • 正文 我出身青樓,卻偏偏與公主長得像俘闯,于是被迫代替她去往敵國和親潭苞。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,697評論 2 351

推薦閱讀更多精彩內(nèi)容

  • webpack使用學(xué)習(xí) 本分享學(xué)習(xí)借鑒webpack中文官網(wǎng)真朗,官網(wǎng)鏈接(中文文檔):https://www.web...
    腿毛怪丶叔叔閱讀 872評論 0 5
  • 原文http://www.cnblogs.com/libin-1/p/6596810.html 版本號 vue-c...
    tengrl閱讀 3,638評論 0 0
  • 目錄第1章 webpack簡介 11.1 webpack是什么此疹? 11.2 官網(wǎng)地址 21.3 為什么使用 web...
    lemonzoey閱讀 1,731評論 0 1
  • 搭建緣由 源于公司每次新啟動一個由多人協(xié)同開發(fā)的項目都由負(fù)責(zé)人初始化項目之后,每個人再去從私服pull一下項目才開...
    胡一巴閱讀 1,498評論 0 0
  • 在現(xiàn)在的前端開發(fā)中,前后端分離蝗碎、模塊化開發(fā)湖笨、版本控制、文件合并與壓縮蹦骑、mock數(shù)據(jù)等等一些原本后端的思想開始...
    Charlot閱讀 5,433評論 1 32