溫馨提示×

溫馨提示×

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

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

webpack配置加載sass模塊的方法是什么

發(fā)布時間:2020-08-31 13:58:56 來源:億速云 閱讀:344 作者:小新 欄目:web開發(fā)

小編給大家分享一下webpack配置加載sass模塊的方法是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

為了使用sass,我們需要安裝sass的依賴包

//在項(xiàng)目下,運(yùn)行下列命令行
npm install --save-dev sass-loader
//因?yàn)閟ass-loader依賴于node-sass,所以還要安裝node-sass
npm install --save-dev node-sass

當(dāng)然了,使用樣式的話,css-loader和style-loader也是必須的依賴包,如果沒有安裝,可以類似上述的方法安裝

  • css-loader使你能夠使用類似@import 和 url(…)的方法實(shí)現(xiàn) require()的功能;

  • style-loader將所有的計(jì)算后的樣式加入頁面中;

二者組合在一起使你能夠把樣式表嵌入webpack打包后的JS文件中。

下面是webpack.config.js文件的部分配置:

var ExtractTextPlugin = require('extract-text-webpack-plugin');//css樣式從js文件中分離出來,需要通過命令行安裝 extract-text-webpack-plugin依賴包
module.exports = {
    ....
    module: {
        loaders: [
            //解析.css文件
            {
                test: /\.css$/,
                loader: ExtractTextPlugin.extract("style", 'css')
            },
            //解析.vue文件
            {
                test: /\.vue$/,
                loader: 'vue'
            }, 
            //解析.scss文件,對于用 import 或 require 引入的sass文件進(jìn)行加載,以及<style lang="sass">...</style>聲明的內(nèi)部樣式進(jìn)行加載
            {
                test: /\.scss$/,
                loader: ExtractTextPlugin.extract("style", 'css!sass') //這里用了樣式分離出來的插件,如果不想分離出來,可以直接這樣寫 loader:'style!css!sass'
            }
        ]
    },
    //.vue文件的配置,以下是為了在.vue文件中使用ES6語法(必須安裝babel相關(guān)的依賴包),以及把使用css或sass語法的樣式提取出來,如果不需要可以忽略
    vue: {
        loaders: {
            js: 'babel', 
            css: ExtractTextPlugin.extract("css"),
            sass: ExtractTextPlugin.extract("css!sass")            
        },
    },
    plugins: [
        new ExtractTextPlugin("style.css") //提取出來的樣式放在style.css文件中
    ]
    ....
}

sass的使用如下,例如:

  • 引入外部樣式,下面兩種寫法都可以使用:

import '../../css/test.scss'
require('../../css/test2.scss');
  • 在.vue文件中使用

<style lang="sass">
     //sass語法樣式
</style>

看完了這篇文章,相信你對webpack配置加載sass模塊的方法是什么有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

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

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

AI