vue-cli中使用Less全局變量,無需一次次導(dǎo)入

在vue開發(fā)前期準(zhǔn)備工作中..遇到這樣個(gè)問題菱父。想把共有的變量封裝在variable.less里。還有extends.less等其他文件剑逃,把他們統(tǒng)一放置layout.less然后在app頁引用浙宜。在app頁成功的引用到里頭的變量以及封裝的函數(shù),但在子組件中炕贵,會(huì)報(bào)變量undefined錯(cuò)梆奈。嘗試過在入口js導(dǎo)入那個(gè)共有l(wèi)ess,也嘗試過使用文件的引用來獲取称开,但都沒有效果。如果在子組件中導(dǎo)入一次共有變量的話,行得通鳖轰。但清酥,這不是我想要的。如果有多個(gè)組件的蕴侣,一個(gè)個(gè)導(dǎo)入就太麻煩了焰轻,也使得該項(xiàng)目的大小增加了不少,運(yùn)行速度當(dāng)然可想而知..經(jīng)過一早上的查找和嘗試,終于找到一種方法昆雀。

接下來就分享下我的方法把~

  • npm install sass-resources-loader --save-dev
  • 在目錄結(jié)構(gòu)的build/utils.jsexports.cssLoaders模塊中再加多一個(gè)函數(shù)
    function lessResourceLoader() {
        var loaders = [
          cssLoader,
          'less-loader',
          {
            loader: 'less-resources-loader',
            options: {
              resources: [
                path.resolve(__dirname, '../src/styles/shared/variable.less'),
              ]
            }
          }
        ];
        if (options.extract) {
          return ExtractTextPlugin.extract({
            use: loaders,
            fallback: 'vue-style-loader'
          })
        } else {
          return ['vue-style-loader'].concat(loaders)
        }
    }
      // generate loader string to be used with extract text plugin
    function generateLoaders(loader, loaderOptions) {
        const loaders = options.usePostCSS ? [cssLoader, postcssLoader] : [cssLoader]

        if (loader) {
            loaders.push({
                loader: loader + '-loader',
                options: Object.assign({}, loaderOptions, {
                    sourceMap: options.sourceMap
                })
            })
        }

        // 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'
            })
        } else {
            return ['vue-style-loader'].concat(loaders)
        }
    }
    return {
        css: generateLoaders(),
        postcss: generateLoaders(),
        less:  lessResourceLoader(), //這里的lessResourceLoader就是上面的方法
        sass: generateLoaders('sass', { indentedSyntax: true }),
        scss: generateLoaders('sass'),
        stylus: generateLoaders('stylus'),
        styl: generateLoaders('stylus')
    }

其中'../src/styles/shared/variable.less'路徑改成自己對(duì)應(yīng)的文件
然后再return{}塊中的less: generateLoaders('less') 替換成 less: lessResourceLoader()

  • 再重新npm run dev下就好了

sass 也是一樣的道理辱志。把less-loader改為sass-loader即可。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末狞膘,一起剝皮案震驚了整個(gè)濱河市揩懒,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌挽封,老刑警劉巖已球,帶你破解...
    沈念sama閱讀 217,084評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異辅愿,居然都是意外死亡智亮,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門点待,熙熙樓的掌柜王于貴愁眉苦臉地迎上來阔蛉,“玉大人,你說我怎么就攤上這事癞埠∽丛” “怎么了?”我有些...
    開封第一講書人閱讀 163,450評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵燕差,是天一觀的道長遭笋。 經(jīng)常有香客問我,道長徒探,這世上最難降的妖魔是什么瓦呼? 我笑而不...
    開封第一講書人閱讀 58,322評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮测暗,結(jié)果婚禮上央串,老公的妹妹穿的比我還像新娘。我一直安慰自己碗啄,他們只是感情好质和,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,370評(píng)論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著稚字,像睡著了一般饲宿。 火紅的嫁衣襯著肌膚如雪厦酬。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,274評(píng)論 1 300
  • 那天瘫想,我揣著相機(jī)與錄音仗阅,去河邊找鬼。 笑死国夜,一個(gè)胖子當(dāng)著我的面吹牛减噪,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播车吹,決...
    沈念sama閱讀 40,126評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼筹裕,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了窄驹?” 一聲冷哼從身側(cè)響起朝卒,我...
    開封第一講書人閱讀 38,980評(píng)論 0 275
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎馒吴,沒想到半個(gè)月后扎运,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,414評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡饮戳,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,599評(píng)論 3 334
  • 正文 我和宋清朗相戀三年豪治,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片扯罐。...
    茶點(diǎn)故事閱讀 39,773評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡负拟,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出歹河,到底是詐尸還是另有隱情掩浙,我是刑警寧澤,帶...
    沈念sama閱讀 35,470評(píng)論 5 344
  • 正文 年R本政府宣布秸歧,位于F島的核電站厨姚,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏键菱。R本人自食惡果不足惜谬墙,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,080評(píng)論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望经备。 院中可真熱鬧拭抬,春花似錦、人聲如沸侵蒙。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽纷闺。三九已至算凿,卻和暖如春份蝴,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背澎媒。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評(píng)論 1 269
  • 我被黑心中介騙來泰國打工搞乏, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留波桩,地道東北人戒努。 一個(gè)月前我還...
    沈念sama閱讀 47,865評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像镐躲,于是被迫代替她去往敵國和親储玫。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,689評(píng)論 2 354

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

  • 版權(quán)聲明:本文為博主原創(chuàng)文章端礼,未經(jīng)博主允許不得轉(zhuǎn)載。 webpack介紹和使用 一入录、webpack介紹 1蛤奥、由來 ...
    it筱竹閱讀 11,118評(píng)論 0 21
  • 原文http://www.cnblogs.com/libin-1/p/6596810.html 版本號(hào) vue-c...
    tengrl閱讀 3,652評(píng)論 0 0
  • GitChat技術(shù)雜談 前言 本文較長,為了節(jié)省你的閱讀時(shí)間僚稿,在文前列寫作思路如下: 什么是 webpack凡桥,它要...
    蕭玄辭閱讀 12,691評(píng)論 7 110
  • 為什么要有前端架構(gòu)師 任何一種崗位的誕生, 都源于問題規(guī)模的膨脹 前端工程師的誕生, 就源于 web 開發(fā)這個(gè)問題...
    柳郎中閱讀 5,758評(píng)論 5 23
  • 遙的白光, 我抬仰見之芒蚀同, 幻成樓的炬目缅刽。 近的黃暈, 余獨(dú)行偶望蠢络, 印下遺滯的殘影衰猛,殘容。 樹墜的粉串呢刹孔, 何故...
    S的河閱讀 136評(píng)論 0 0