溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

mpvue全局引入sass文件的方法步驟

發(fā)布時(shí)間:2020-10-03 07:13:49 來(lái)源:腳本之家 閱讀:168 作者:fairyIer 欄目:web開發(fā)

mpvue工程初始化的時(shí)候,使用sass的步驟

1.安裝依賴:

npm install sass-loader node-sass --save-dev 

2.在.vue文件中的style節(jié)點(diǎn)加上lang=”scss”,這樣就可以愉快地使用sass進(jìn)行開發(fā)了,無(wú)需再webpack.base.config.js中配置loader,webpack會(huì)自動(dòng)識(shí)別.scss文件以及.vue中的scss代碼。

在使用sass開發(fā)的時(shí)候,我們經(jīng)常需要在各個(gè)頁(yè)面使用統(tǒng)一的變量,還有一些方法,這種公共的資源如果不進(jìn)行特殊處理的話,我們?cè)诿總€(gè)頁(yè)面都需要@import進(jìn)來(lái)才能使用,當(dāng)頁(yè)面多起來(lái)的話,后期維護(hù)起來(lái)可能會(huì)有點(diǎn)吃力,這里介紹在mpvue下如何處理sass全局引入sass資源文件的步驟:

1.首先需要安裝sass-resource-loader(我這里版本號(hào)是1.3.3):

npm install sass-resources-loader --save-dev 

2.然后是找到工程根目錄下的build/utils.js文件,我們新增一個(gè)loader對(duì)象

var sassResourceLoader = {
 loader: 'sass-resources-loader',
 options: {
  resources: [
  path.resolve(__dirname, '../src/assets/variables.scss'),
  ]
 }
 }

resources數(shù)組中,放的是需要引入的sass資源文件的路徑。

聲明對(duì)象的位置最好與其他loader同級(jí)

mpvue全局引入sass文件的方法步驟 

3. 然后改寫一下generateLoaders函數(shù)

// generate loader string to be used with extract text plugin
 function generateLoaders(loader, loaderOptions, anotherLoader) {
 var loaders = [cssLoader, px2rpxLoader, postcssLoader]
 if (loader) {
  loaders.push({
  loader: loader + '-loader',
  options: Object.assign({}, loaderOptions, {
   sourceMap: options.sourceMap
  })
  })
 }
 if (!!anotherLoader) loaders.push(anotherLoader)

 // 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)
 }
 }

主要是改了兩個(gè)地方,就只是加了一個(gè)參數(shù),加了一下判斷:

mpvue全局引入sass文件的方法步驟

最后我們把自定義加上的loader加上去:

mpvue全局引入sass文件的方法步驟

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI