日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > CSS >内容正文

CSS

The way of Webpack learning (IV.) -- Packaging CSS(打包css)

發(fā)布時(shí)間:2023/12/9 CSS 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 The way of Webpack learning (IV.) -- Packaging CSS(打包css) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一:目錄結(jié)構(gòu)

二:webpack.config.js的配置

const path = require('path');module.exports = {mode:'development',entry:{app:'./src/app.js'},output:{path:path.resolve(__dirname,'dist'),publicPath:'./dist/',//設(shè)置引入路徑在相對路徑filename:'[name].bundle.js'},module:{rules:[{ test: /\.css$/,use:[{loader:'style-loader'//style-loader作用:主要?jiǎng)?chuàng)建style標(biāo)簽,把css插入html代碼中。<style></style>//如果想要插入link標(biāo)簽,去引入css的話,使用style-loader/url。<link href="path/to/file.css" rel="stylesheet">},{loader:'css-loader'//css-loader先執(zhí)行,放在后面的先執(zhí)行。//css-loader作用:解決import css的問題,把css代碼打包到j(luò)s代碼里面。一般情況下,css不能使用import導(dǎo)入//file-loader作用:可以把css和js分別打包成兩個(gè)文件。}]}]} }

三:其他文件配置

//app.js import './css/base.css'

到這里,一個(gè)正常的打包c(diǎn)ss過程就完成了。下面介紹一個(gè)這些loader的屬性,讓我們的使用更靈活。

四:style-loader/useable

//app.js import base from './css/base.css' import common from './css/common.css'base.use();//渲染base.css common.unuse();//不渲染common.css//webpack.config.js 修改loader loader:'style-loader/useable'

五:style-loader的實(shí)現(xiàn)原理

//簡易的style-loader實(shí)現(xiàn)
//將css插入到head標(biāo)簽內(nèi)部 module.exports = function (source) {let script = (`let style = document.createElement("style");style.innerText = ${JSON.stringify(source)};document.head.appendChild(style);`);return script; } //使用方式1 resolveLoader: {modules: [path.resolve('node_modules'), path.resolve(__dirname, 'src', 'loaders')] }, {test: /\.css$/,use: ['style-loader'] }, //使用方式2 將自己寫的loaders發(fā)布到npm倉庫,然后添加到依賴,按照方式1中的配置方式使用即可

六:css-loader的實(shí)現(xiàn)原理(待完善)

七:提取css:ExtractTextWebpackPlugin

八:更強(qiáng)大的處理css代碼的loader:postcss

九:怎么開發(fā)一個(gè)新的loader?

?

轉(zhuǎn)載于:https://www.cnblogs.com/weihuan/p/9642475.html

總結(jié)

以上是生活随笔為你收集整理的The way of Webpack learning (IV.) -- Packaging CSS(打包css)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。