CSS與SASS在webpack中的使用

加載 CSS 需要 css-loader 和 style-loader,他們做兩件不同的事情,css-loader會遍歷 CSS 文件,然后找到 url() 表達式然后處理他們,style-loader 會把原來的 CSS 代碼插入頁面中的一個 style 標簽中。

npm install --save-dev css-loader style-loader
//webpack中配置
module: {
    loaders:[
        {
            test: /\.css$/, // Only .css files
            loader: 'style!css' // Run both loaders
        }
    ]
}

如果你想使用編譯 CSS,這里有兩種可用的加載器:sass-loader。下面是如何設置。

npm install --save-dev sass-loader
//webpack中配置
module: {
    loaders:[
        {
            test: /\.scss$/,
            loader: style!css!sass
        }
    ]
}

這樣在項目中就可以直接使用:import 'App.scss'

上面的配置,會直接在html頁面生成style標簽。不利用開發調試,所以一般會采用如下配置

npm install --save-dev autoprefixer-loader
//webpack中配置
module: {
    loaders:[
        {
            test: /\.scss$/,
            loader: 'style!css?modules&importLoaders=2&sourceMap&localIdentName=[local]___[hash:base64:5]!autoprefixer?browsers=last 2 version!sass?outputStyle=expanded&sourceMap'
        }
    ]
}

加上 modules 即為啟用,localIdentName 是設置生成樣式的命名規則,詳細說明:CSS Modules 詳解及 React 中實踐
autoprefixer 是一個自己添加前綴的插件。詳見文檔

react-bootstrap使用

安裝loadernpm install --save-dev bootstrap-loader
安裝依賴

# Bootstrap 3
npm install bootstrap-sass

# or Bootstrap 4
npm install bootstrap@v4.0.0-alpha.2

# Node SASS & other loaders needed to handle styles
npm install css-loader node-sass resolve-url-loader sass-loader style-loader url-loader

然后在webpack中配置
entry: [ 'bootstrap-loader/extractStyles', './app' ]
詳見文檔

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容