国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

Vue引入sass并配置全局變量的方法

2019-11-19 13:36:14
字體:
來源:轉載
供稿:網友

引入sass

首先使用官方提供的腳手架vue-cli進行搭建框架,這里就不做說明了,查閱官網即可。

等安裝完所有依賴后,安裝sass的依賴包:

npm install --save-dev sass-loader//sass-loader依賴于node-sassnpm install --save-dev node-sass

然后在build文件夾下的webpack.base.conf.js的rules里面添加配置:

{ test: //.sass$/, loaders: ['style', 'css', 'sass']}

然后添加csslang屬性。注意,這里是scss,而且css文件的后綴也是scss:

<style lang="scss"></style>

最后需要重新編譯一下項目,否則沒有效果。

$ npm run dev

現在就可以隨意的使用sass了,這時候會發現如果我想定義幾個變量進行全局使用,好像只能在頁面中通過@import來引入,這顯然不夠優雅,可以這樣解決。

配置sass全局變量

有一個babel插件可以完美的解決這個問題:sass-resources-loader可以訪問sass資源任何一個需要訪問的sass模塊。所以,可以使用共享變量和混合所有SASS樣式,而不去每個文件都引用。

首先進行插件安裝:

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

然后在 build 文件夾下找到 util.js 修改sass編譯器loader的配置,直接把下面的代碼復制進去即可:

// 全局文件引入 當然只想編譯一個文件的話可以省去這個函數function resolveResource(name) { return path.resolve(__dirname, '../src/style/' + name);}function generateSassResourceLoader() { var loaders = [  cssLoader,  'sass-loader',  {   loader: 'sass-resources-loader',   options: {    // 多個文件時用數組的形式傳入,單個文件時可以直接使用 path.resolve(__dirname, '../static/style/common.scss'    resources: [resolveResource('theme.scss')]    }  }  ];  if (options.extract) {   return ExtractTextPlugin.extract({    use: loaders,    fallback: 'vue-style-loader'   })  } else {   return ['vue-style-loader'].concat(loaders)  } }

將默認的sass配置改為 generateSassResourceLoader()。

return {  css: generateLoaders(),  postcss: generateLoaders(),  less: generateLoaders('less'),  // vue-cli默認sass配置  // sass: generateLoaders('sass', { indentedSyntax: true }),   // scss: generateLoaders('sass'),  // 新引入的sass-resources-loader  sass: generateSassResourceLoader(),  scss: generateSassResourceLoader(),  stylus: generateLoaders('stylus'),  styl: generateLoaders('stylus') }

改完配置后重啟服務就可以在theme.scss里定義全局變量并在頁面中引用了。

需要注意的是,scss里的變量是$開頭,而less里的變量是@開頭。比如我想定義一個項目的主色調變量,我可以在theme.scss里這樣定義:

$c-primary: #fd7a00;$theme-blue: #3296fa;$theme-red: #da3838;

引用變量的時候直接引用變量名即可。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 西宁市| 新昌县| 玉山县| 石台县| 广平县| 虞城县| 凤凰县| 香河县| 南雄市| 禹州市| 平昌县| 尼木县| 永胜县| 仁寿县| 马边| 卓尼县| 正宁县| 新津县| 平南县| 武邑县| 栾川县| 麻栗坡县| 加查县| 洛南县| 宝山区| 延津县| 全南县| 宣恩县| 贵南县| 老河口市| 洛隆县| 新化县| 板桥市| 阿尔山市| 兰溪市| 眉山市| 澄迈县| 祥云县| 博野县| 根河市| 佳木斯市|