1. 程式人生 > >Webpack——CSS打包,CSS、SASS處理

Webpack——CSS打包,CSS、SASS處理

處理style檔案

  • 話說html都打包過去了,js也打包過去了,新的html檔案和js產生,如果更換了儲存資料夾(一般都會),那麼這些打包生成的檔案對於資源的引入就會產生錯誤,那麼我們css檔案也需要重新處理過,避免路徑但不限於的錯誤;

安裝相關工具模組

  • css-loader style-loader
#-D = --save-dev 放在前面後面都無所謂
npm i -D css-loader style-loader

在這裡插入圖片描述

配置css打包引數

  • 配置css的打包規則,注意使用包的順序,就和script載入順序一個意思,後面看不到前面
{
   test: /\.css$/,
   use:
["style-loader", "css-loader"] }

在這裡插入圖片描述

不知道其他部分程式碼的看我前兩篇webpack的文章,裡面有html和js的打包詳細教程。 這就是新生成的style.css檔案,並自動引入進去,當然,原來的css檔案自然會出現resourceload error錯誤;

  • 如果我,用開發環境模式打包:

在這裡插入圖片描述

新的資料夾裡沒有style.css,按照原來的路徑肯定出錯 在這裡插入圖片描述

我的css: 在這裡插入圖片描述

在這裡插入圖片描述

但是,看控制檯Elements: 在這裡插入圖片描述

這裡自動增加了style標籤有沒有!

  • 我們再看看打包好的js,裡面自動增加了一個控制css的程式碼,功能就是在head裡新增樣式表!

在這裡插入圖片描述

安裝處理SASS的工具

npm i -D sass-loader node-sass

在這裡插入圖片描述

  • 還需要安裝檔案分離並獨立出來的外掛
npm i -D [email protected] # next代表最新版,因為3.x版本已經不支援安裝,而防止服務方沒有將預設指令指向最新版而主動申請更新最新版

可能會出現安裝到測試版,並無大礙: 在這裡插入圖片描述

使用extract-text-webpack-plugin外掛打包css

正常css檔案

  • 重新配置引數:

使用檔案分離外掛,新增style.css

plugins: [
    new HtmlWebpackPlugin({ // Also generate a test.html
title: "new html", filename: 'test.html', template: "template.html" }, new ExtractTextPlugin("style.css")) ], module: { rules: [{ test: /\.js$/, use: 'babel-loader', exclude: /node_modules/ }, { test: /\.css$/, use: ExtractTextPlugin.extract({ fallback: "style-loader", use: "css-loader" }) } ] }

這次成功新建了style.css檔案並引入 在這裡插入圖片描述

不再是內聯樣式表,變成了外聯樣式檔案了。

在這裡插入圖片描述

SASS樣式表引入

  • 我們先改成sass檔案,sass的好處在於清晰的樣式結構:

在這裡插入圖片描述

  • 同時我們要修改引入: 在這裡插入圖片描述

生成的檔案不僅引入了樣式,還將style.scss重構成了正常的css檔案:

在這裡插入圖片描述

這就是css檔案的處理,scss真的非常好用,結構明顯,建議大家仔細瞭解一下。