From fff23ae7bf598aeb20ec310e81643ab2c9b8329e Mon Sep 17 00:00:00 2001 From: Yan <1453053689@qq.com> Date: Sun, 29 Sep 2024 10:22:23 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E8=A1=A5=E5=85=85webpack=E7=AC=94?= =?UTF-8?q?=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vitepress/cache/deps/_metadata.json | 18 +- ...ss\345\267\245\347\250\213\345\214\226.md" | 144 +++++ ...ss\346\250\241\345\235\227\345\214\226.md" | 205 +++++++ ...75\345\220\215\350\247\204\350\214\203.md" | 75 +++ .../04.css-in-js.md" | 150 +++++ .../05.css-module.md" | 187 ++++++ ...ss\347\232\204\344\275\277\347\224\250.md" | 315 ++++++++++ ...44\270\255\344\275\277\347\224\250less.md" | 136 +++++ .../08.postcss.md" | 571 ++++++++++++++++++ ...270\255\344\275\277\347\224\250postcss.md" | 123 ++++ ...73\346\210\220\346\226\207\344\273\266.md" | 194 ++++++ .../assets/2020-01-31-09-53-31.png" | Bin 0 -> 189598 bytes .../assets/2020-01-31-13-54-37.png" | Bin 0 -> 24931 bytes .../assets/2020-01-31-14-00-56.png" | Bin 0 -> 23417 bytes .../assets/2020-01-31-14-04-11.png" | Bin 0 -> 47510 bytes .../assets/2020-01-31-14-08-49.png" | Bin 0 -> 35137 bytes .../assets/2020-02-03-11-48-45.png" | Bin 0 -> 37627 bytes .../assets/2020-02-03-11-50-05.png" | Bin 0 -> 42085 bytes .../assets/2020-02-04-14-31-33.png" | Bin 0 -> 15572 bytes .../assets/2020-02-04-14-37-51.png" | Bin 0 -> 15430 bytes .../assets/2020-02-05-14-37-11.png" | Bin 0 -> 8516 bytes .../assets/postcss-workflow.png" | Bin 0 -> 19843 bytes ...05\345\222\214\344\275\277\347\224\250.md" | 66 ++ .../02.babel\351\242\204\350\256\276.md" | 132 ++++ .../03.babel\346\217\222\344\273\266.md" | 198 ++++++ ...4\270\255\344\275\277\347\224\250babel.md" | 99 +++ ...73\347\232\204\350\275\254\346\215\242.md" | 156 +++++ ...it\347\232\204\350\275\254\346\215\242.md" | 87 +++ .../assets/2020-02-07-10-12-01.png" | Bin 0 -> 541672 bytes .../assets/2020-02-07-10-25-56.png" | Bin 0 -> 14002 bytes .../assets/2020-02-07-10-27-30.png" | Bin 0 -> 14092 bytes ...30\345\214\226\346\246\202\345\277\265.md" | 38 ++ ...41\345\235\227\350\247\243\346\236\220.md" | 68 +++ ...\214\226loader\346\200\247\350\203\275.md" | 157 +++++ ...347\203\255\346\233\264\346\226\260HMR.md" | 70 +++ ...13\345\212\250\345\210\206\345\214\205.md" | 323 ++++++++++ ...52\345\212\250\345\210\206\345\214\205.md" | 409 +++++++++++++ ...43\347\240\201\345\216\213\347\274\251.md" | 157 +++++ .../08.tree-shaking.md" | 314 ++++++++++ ...9.\346\207\222\345\212\240\350\275\275.md" | 128 ++++ .../10.Eslint.md" | 129 ++++ .../11.bundle-analyzer.md" | 93 +++ .../12.gzip\345\216\213\347\274\251.md" | 61 ++ .../assets/2020-02-12-09-53-01.png" | Bin 0 -> 12204 bytes .../assets/2020-02-13-16-26-41.png" | Bin 0 -> 48231 bytes .../assets/2020-02-13-16-28-10.png" | Bin 0 -> 35762 bytes .../assets/2020-02-21-13-32-36.png" | Bin 0 -> 33344 bytes .../assets/2020-02-21-14-20-49.png" | Bin 0 -> 14511 bytes .../assets/2020-02-21-14-22-32.png" | Bin 0 -> 18271 bytes .../assets/2020-02-21-14-34-05.png" | Bin 0 -> 5899 bytes .../assets/2020-02-24-13-24-57.png" | Bin 0 -> 28818 bytes .../assets/2020-02-24-17-19-47.png" | Bin 0 -> 27923 bytes .../assets/2020-02-28-15-37-26.png" | Bin 0 -> 17505 bytes .../assets/2020-02-28-15-41-44.png" | Bin 0 -> 18642 bytes .../assets/auto-subpackage.png" | Bin 0 -> 59714 bytes .../assets/bundle-analyzer.png" | Bin 0 -> 1687757 bytes ...7\350\203\275\344\274\230\345\214\226.png" | Bin 0 -> 182404 bytes ...50\346\200\201\344\276\235\350\265\226.md" | 143 +++++ ...32\351\241\265\345\272\224\347\224\250.md" | 31 + ...345\273\272vue\345\272\224\347\224\250.md" | 22 + ...5\273\272react\345\272\224\347\224\250.md" | 11 + ...45\273\272node\345\272\224\347\224\250.md" | 35 ++ ...50\346\240\210\345\272\224\347\224\250.md" | 60 ++ src/views/personal/presume.md | 9 +- 64 files changed, 5102 insertions(+), 12 deletions(-) create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/01.\344\270\272\344\273\200\344\271\210css\345\267\245\347\250\213\345\214\226.md" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/02.\345\210\251\347\224\250webpack\345\260\206css\346\250\241\345\235\227\345\214\226.md" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/03.BEM\345\221\275\345\220\215\350\247\204\350\214\203.md" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/04.css-in-js.md" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/05.css-module.md" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/06.Less\347\232\204\344\275\277\347\224\250.md" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/07.\345\234\250webpack\344\270\255\344\275\277\347\224\250less.md" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/08.postcss.md" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/09.\345\234\250webpack\344\270\255\344\275\277\347\224\250postcss.md" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/10.\345\260\206css\346\212\275\347\246\273\346\210\220\346\226\207\344\273\266.md" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/assets/2020-01-31-09-53-31.png" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/assets/2020-01-31-13-54-37.png" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/assets/2020-01-31-14-00-56.png" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/assets/2020-01-31-14-04-11.png" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/assets/2020-01-31-14-08-49.png" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/assets/2020-02-03-11-48-45.png" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/assets/2020-02-03-11-50-05.png" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/assets/2020-02-04-14-31-33.png" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/assets/2020-02-04-14-37-51.png" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/assets/2020-02-05-14-37-11.png" create mode 100644 "src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/assets/postcss-workflow.png" create mode 100644 "src/views/note/12-webpack/04.js\345\205\274\345\256\271\346\200\247/01.babel\347\232\204\345\256\211\350\243\205\345\222\214\344\275\277\347\224\250.md" create mode 100644 "src/views/note/12-webpack/04.js\345\205\274\345\256\271\346\200\247/02.babel\351\242\204\350\256\276.md" create mode 100644 "src/views/note/12-webpack/04.js\345\205\274\345\256\271\346\200\247/03.babel\346\217\222\344\273\266.md" create mode 100644 "src/views/note/12-webpack/04.js\345\205\274\345\256\271\346\200\247/04.\345\234\250webpack\344\270\255\344\275\277\347\224\250babel.md" create mode 100644 "src/views/note/12-webpack/04.js\345\205\274\345\256\271\346\200\247/05.\346\211\251\345\261\225-\345\257\271\347\261\273\347\232\204\350\275\254\346\215\242.md" create mode 100644 "src/views/note/12-webpack/04.js\345\205\274\345\256\271\346\200\247/06.\346\211\251\345\261\225-\345\257\271asynch\345\222\214await\347\232\204\350\275\254\346\215\242.md" create mode 100644 "src/views/note/12-webpack/04.js\345\205\274\345\256\271\346\200\247/assets/2020-02-07-10-12-01.png" create mode 100644 "src/views/note/12-webpack/04.js\345\205\274\345\256\271\346\200\247/assets/2020-02-07-10-25-56.png" create mode 100644 "src/views/note/12-webpack/04.js\345\205\274\345\256\271\346\200\247/assets/2020-02-07-10-27-30.png" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/01.\346\200\247\350\203\275\344\274\230\345\214\226\346\246\202\345\277\265.md" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/02.\345\207\217\345\260\221\346\250\241\345\235\227\350\247\243\346\236\220.md" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/03.\344\274\230\345\214\226loader\346\200\247\350\203\275.md" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/04.\347\203\255\346\233\264\346\226\260HMR.md" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/05.\346\211\213\345\212\250\345\210\206\345\214\205.md" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/06.\350\207\252\345\212\250\345\210\206\345\214\205.md" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/07.\344\273\243\347\240\201\345\216\213\347\274\251.md" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/08.tree-shaking.md" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/09.\346\207\222\345\212\240\350\275\275.md" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/10.Eslint.md" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/11.bundle-analyzer.md" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/12.gzip\345\216\213\347\274\251.md" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/assets/2020-02-12-09-53-01.png" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/assets/2020-02-13-16-26-41.png" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/assets/2020-02-13-16-28-10.png" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/assets/2020-02-21-13-32-36.png" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/assets/2020-02-21-14-20-49.png" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/assets/2020-02-21-14-22-32.png" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/assets/2020-02-21-14-34-05.png" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/assets/2020-02-24-13-24-57.png" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/assets/2020-02-24-17-19-47.png" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/assets/2020-02-28-15-37-26.png" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/assets/2020-02-28-15-41-44.png" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/assets/auto-subpackage.png" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/assets/bundle-analyzer.png" create mode 100644 "src/views/note/12-webpack/05.\346\200\247\350\203\275\344\274\230\345\214\226/assets/\346\200\247\350\203\275\344\274\230\345\214\226.png" create mode 100644 "src/views/note/12-webpack/06.\350\241\245\345\205\205\347\237\245\350\257\206\345\222\214\345\256\236\350\267\265/01.\346\211\251\345\261\225--\344\270\215\347\241\256\345\256\232\347\232\204\345\212\250\346\200\201\344\276\235\350\265\226.md" create mode 100644 "src/views/note/12-webpack/06.\350\241\245\345\205\205\347\237\245\350\257\206\345\222\214\345\256\236\350\267\265/02.\346\220\255\345\273\272\345\244\232\351\241\265\345\272\224\347\224\250.md" create mode 100644 "src/views/note/12-webpack/06.\350\241\245\345\205\205\347\237\245\350\257\206\345\222\214\345\256\236\350\267\265/03.\346\211\251\345\261\225-\346\220\255\345\273\272vue\345\272\224\347\224\250.md" create mode 100644 "src/views/note/12-webpack/06.\350\241\245\345\205\205\347\237\245\350\257\206\345\222\214\345\256\236\350\267\265/04.\346\211\251\345\261\225-\346\220\255\345\273\272react\345\272\224\347\224\250.md" create mode 100644 "src/views/note/12-webpack/06.\350\241\245\345\205\205\347\237\245\350\257\206\345\222\214\345\256\236\350\267\265/05.\346\220\255\345\273\272node\345\272\224\347\224\250.md" create mode 100644 "src/views/note/12-webpack/06.\350\241\245\345\205\205\347\237\245\350\257\206\345\222\214\345\256\236\350\267\265/06.\346\220\255\345\273\272\345\205\250\346\240\210\345\272\224\347\224\250.md" diff --git a/.vitepress/cache/deps/_metadata.json b/.vitepress/cache/deps/_metadata.json index 519e309..a0106c0 100644 --- a/.vitepress/cache/deps/_metadata.json +++ b/.vitepress/cache/deps/_metadata.json @@ -1,43 +1,43 @@ { - "hash": "c98421df", + "hash": "6b26a90e", "configHash": "af8f88d3", - "lockfileHash": "ca7da281", - "browserHash": "677b5fbf", + "lockfileHash": "2dfc6867", + "browserHash": "de667daa", "optimized": { "vue": { "src": "../../../node_modules/.pnpm/vue@3.4.38/node_modules/vue/dist/vue.runtime.esm-bundler.js", "file": "vue.js", - "fileHash": "3692a090", + "fileHash": "b320a92a", "needsInterop": false }, "vitepress > @vue/devtools-api": { "src": "../../../node_modules/.pnpm/@vue+devtools-api@7.3.9/node_modules/@vue/devtools-api/dist/index.js", "file": "vitepress___@vue_devtools-api.js", - "fileHash": "918e7541", + "fileHash": "bd096a9c", "needsInterop": false }, "vitepress > @vueuse/core": { "src": "../../../node_modules/.pnpm/@vueuse+core@11.0.3_vue@3.4.38/node_modules/@vueuse/core/index.mjs", "file": "vitepress___@vueuse_core.js", - "fileHash": "657538de", + "fileHash": "7db60fa0", "needsInterop": false }, "vitepress > @vueuse/integrations/useFocusTrap": { "src": "../../../node_modules/.pnpm/@vueuse+integrations@11.0.3_focus-trap@7.5.4_vue@3.4.38/node_modules/@vueuse/integrations/useFocusTrap.mjs", "file": "vitepress___@vueuse_integrations_useFocusTrap.js", - "fileHash": "16e8f27d", + "fileHash": "44dcf4b7", "needsInterop": false }, "vitepress > mark.js/src/vanilla.js": { "src": "../../../node_modules/.pnpm/mark.js@8.11.1/node_modules/mark.js/src/vanilla.js", "file": "vitepress___mark__js_src_vanilla__js.js", - "fileHash": "789a3184", + "fileHash": "5d2eccb9", "needsInterop": false }, "vitepress > minisearch": { "src": "../../../node_modules/.pnpm/minisearch@7.1.0/node_modules/minisearch/dist/es/index.js", "file": "vitepress___minisearch.js", - "fileHash": "1dbaac72", + "fileHash": "074aae20", "needsInterop": false } }, diff --git "a/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/01.\344\270\272\344\273\200\344\271\210css\345\267\245\347\250\213\345\214\226.md" "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/01.\344\270\272\344\273\200\344\271\210css\345\267\245\347\250\213\345\214\226.md" new file mode 100644 index 0000000..1f07362 --- /dev/null +++ "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/01.\344\270\272\344\273\200\344\271\210css\345\267\245\347\250\213\345\214\226.md" @@ -0,0 +1,144 @@ +# css 工程化概述 {ignore} + +## css 的问题 + +### 类名冲突的问题 + +当你写一个 css 类的时候,你是写全局的类呢,还是写多个层级选择后的类呢? + +你会发现,怎么都不好 + +- 过深的层级不利于编写、阅读、压缩、复用 +- 过浅的层级容易导致类名冲突 + +一旦样式多起来,这个问题就会变得越发严重,其实归根结底,就是类名冲突不好解决的问题 + +```css +.test{ + xxx +} + +//推荐 --嵌套的写法可以解决类名冲突,但是也仅限于css工程化之前使用 +.xxx .Xxx .test{ + +} +``` + +### 重复样式 + +这种问题就更普遍了,一些重复的样式值总是不断的出现在 css 代码中,维护起来极其困难 + +比如,一个网站的颜色一般就那么几种: + +- primary +- info +- warn +- error +- success + +如果有更多的颜色,都是从这些色调中自然变化得来,可以想象,这些颜色会到处充斥到诸如背景、文字、边框中,一旦要做颜色调整,是一个非常大的工程 + +```css +主题:#f40 .box { + background: #f40; +} + +.inner { + color: #f40; +} + +//缺点:如果有一天,主题色变成了#f66,那么这所有用到的主题色的地方都需要更改 +``` + +### css 文件细分问题 + +在大型项目中,css 也需要更细的拆分,这样有利于 css 代码的维护。 + +比如,有一个做轮播图的模块,它不仅需要依赖 js 功能,还需要依赖 css 样式,既然依赖的 js 功能仅关心轮播图,那 css 样式也应该仅关心轮播图,由此类推,不同的功能依赖不同的 css 样式、公共样式可以单独抽离,这样就形成了不同于过去的 css 文件结构:文件更多、拆分的更细 + +而同时,在真实的运行环境下,我们却希望文件越少越好,这种情况和 JS 遇到的情况是一致的 + +因此,对于 css,也需要工程化管理 + +**从另一个角度来说,css 的工程化会遇到更多的挑战,因为 css 不像 JS,它的语法本身经过这么多年并没有发生多少的变化(css3 也仅仅是多了一些属性而已),对于 css 语法本身的改变也是一个工程化的课题** + +## 如何解决 + +这么多年来,官方一直没有提出方案来解决上述问题 + +一些第三方机构针对不同的问题,提出了自己的解决方案 + +### 解决类名冲突 + +一些第三方机构提出了一些方案来解决该问题,常见的解决方案如下: + +**命名约定** + +即提供一种命名的标准,来解决冲突,常见的标准有: + +- **BEM** +- OOCSS +- AMCSS +- SMACSS +- 其他 + +**css in js** + +这种方案非常大胆,它觉得,css 语言本身几乎无可救药了,干脆直接用 js 对象来表示样式,然后把样式直接应用到元素的 style 中 + +这样一来,css 变成了一个一个的对象,就可以完全利用到 js 语言的优势,你可以: + +- 通过一个函数返回一个样式对象 +- 把公共的样式提取到公共模块中返回 +- 应用 js 的各种特性操作对象,比如:混合、提取、拆分 +- 更多的花样 + +```js +//commonStyle.js +module.exports={ + background:#f40, + color:#999 +} + +//index.css +const commonStyle=require("./commonStyle.js") +const styles={ + ...commonStyle, + borderRadius:"1px soild #ccc" +} +/*传入一个对象,取出其中一个属性*/ +function take(commonStyle,"color") => {color:"xxx"} + +//这样就灵活了 +``` + +> 这种方案在手机端的 React Native 中大行其道 + +**css module** + +非常有趣和好用的 css 模块化方案,编写简单,绝对不重名 + +具体的课程中详细介绍 + +### 解决重复样式的问题 + +**css in js** + +这种方案虽然可以利用 js 语言解决重复样式值的问题,但由于太过激进,很多习惯写 css 的开发者编写起来并不是很适应 + +**预编译器** + +有些第三方搞出一套 css 语言的进化版来解决这个问题,它支持变量、函数等高级语法,然后经过编译器将其编译成为正常的 css + +这种方案特别像构建工具,不过它仅针对 css + +常见的预编译器支持的语言有: + +- **less** +- sass + +### 解决 css 文件细分问题 + +这一部分,就要依靠构建工具,例如 webpack 来解决了 + +**利用一些 loader 或 plugin 来打包、合并、压缩 css 文件** diff --git "a/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/02.\345\210\251\347\224\250webpack\345\260\206css\346\250\241\345\235\227\345\214\226.md" "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/02.\345\210\251\347\224\250webpack\345\260\206css\346\250\241\345\235\227\345\214\226.md" new file mode 100644 index 0000000..a580c4f --- /dev/null +++ "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/02.\345\210\251\347\224\250webpack\345\260\206css\346\250\241\345\235\227\345\214\226.md" @@ -0,0 +1,205 @@ +# 利用 webpack 拆分 css {ignore} + +要拆分 css,就必须把 css 当成像 js 那样的模块;要把 css 当成模块,就必须有一个构建工具(webpack),它具备合并代码的能力 + +**而 webpack 本身只能读取 css 文件的内容、将其当作 JS 代码进行分析,因此,会导致错误(原因是 AST 抽象语法树无法解析 css)** + +于是,就必须有一个 loader,能够将 css 代码转换为 js 代码,通过 AST 抽象语法树。 + +**该问题解决了上个章节中提出的最后一问---如何将 css 进行细分。** + +## css-loader + +**css-loader 的作用,就是将 css 代码转换为 js 代码** + +```sh +pnpm i css-loader -D +``` + +它的处理原理极其简单:将 css 代码作为字符串导出 + +例如: + +```css +.red { + color: "#f40"; +} +``` + +经过 css-loader 转换后变成 js 代码: + +```js +module.exports = `.red{ + color:"#f40"; +}`; +``` + +> 上面的 js 代码是经过我简化后的,不代表真实的 css-loader 的转换后代码,css-loader 转换后的代码会有些复杂,同时会导出更多的信息,但核心思想不变 + +再例如: + +```css +.red { + color: "#f40"; + background: url("./bg.png") + //无法解析,因为图片通不过AST,需要file-loader或者url-loader +; +} +``` + +经过 css-loader 转换后变成 js 代码: + +```js +var import1 = require("./bg.png"); //file-loader会返回解析后的路径 +module.exports = `.red{ + color:"#f40"; + background:url("${import1}") +}`; +``` + +这样一来,经过 webpack 的后续处理,会把依赖`./bg.png`添加到模块列表,然后再将代码转换为 + +```js +var import1 = __webpack_require__("./src/bg.png"); +module.exports = `.red{ + color:"#f40"; + background:url("${import1}") +}`; +``` + +再例如: + +```css +@import "./reset.css"; //css-loader会将该模块解析为字符串,并拼接到最终结果去 +.red { + color: "#f40"; + background: url("./bg.png"); +} +``` + +会转换为: + +```js +var import1 = require("./reset.css"); +var import2 = require("./bg.png"); +module.exports = `${import1} +.red{ + color:"#f40"; + background:url("${import2}") +}`; +``` + +总结,css-loader 干了什么: + +1. 将 css 文件的内容作为字符串导出 +2. 将 css 中的其他依赖作为 require 导入,以便 webpack 分析依赖 +3. 就算多次导入引用,也只会执行一次,因为 webpack 分析依赖的时候会对照资源记录表 + +## style-loader + +由于 css-loader 仅提供了将 css 转换为字符串导出的能力,剩余的事情要交给其他 loader 或 plugin 来处理 + +style-loader 可以将 css-loader 转换后的代码进一步处理,将 css-loader 导出的字符串加入到页面的 style 元素中 + +```sh +pnpm i style-loader -D +``` + +例如: + +```css +.red { + color: "#f40"; +} +``` + +经过 css-loader 转换后变成 js 代码: + +```js +module.exports = `.red{ + color:"#f40"; +}`; +``` + +经过 style-loader 转换后变成: + +```js +module.exports = `.red{ + color:"#f40"; +}`; +var style = module.exports; +var styleElem = document.createElement("style"); +styleElem.innerHTML = style; +document.head.appendChild(styleElem); +module.exports = {}; +``` + +> 以上代码均为简化后的代码,并不代表真实的代码 +> style-loader 有能力避免同一个样式的重复导入 + +## 实践 + +src/index.js + +```js +const bannerCss = require("./assets/banner.css"); //解析不了,我们要使用css-loader来解析css +console.log(bannerCss.toString()); + +const pagerCss = require("./assets/pager.css"); //解析不了,我们需要file-loader或者url-loader来解析里面引用的文件 + +// //css-loader只是将css文件解析为js字符串,并没有自动的创建style插入到页面,这个工作需要style-loader来完成 +const style = document.createElement("style"); +style.innerHTML = pagerCss.toString(); +document.head.appendChild(style); +``` + +src/assets/banner.css + +```css +.banner { + color: "#f40"; +} +``` + +src/assets/pager.css + +```css +@import "./banner.css"; + +.pager { + width: 1000px; + height: 1000px; + color: "#f40"; + /* 需要file-loader或者url-loader */ + background: url("./bg.png"); +} +``` + +webpack.config.js + +```js +const { CleanWebpackPlugin } = require("clean-webpack-plugin"); + +module.exports = { + mode: "development", + devtool: "source-map", + watch: true, + module: { + rules: [ + //loader执行顺序是从后向前的,这里是要先css-loader然后才style-loader + { test: /\.css$/, use: ["style-loader", "css-loader"] }, + { test: /\.png$/, use: "file-loader" }, + ], + }, + // + plugins: [new CleanWebpackPlugin()], +}; +``` + +## 总结 + +我们只需要记住一点,webpack 想要解析 css 的话,就需要 loader 来进行。 + +我们可以使用`css-loader`和`style-loader`来解析,有了这两个 loader,我们就解决了 css 模块化的问题。。 + +以后还会介绍将 css 以文件的形式生成的插件 plugins。 diff --git "a/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/03.BEM\345\221\275\345\220\215\350\247\204\350\214\203.md" "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/03.BEM\345\221\275\345\220\215\350\247\204\350\214\203.md" new file mode 100644 index 0000000..e3b4041 --- /dev/null +++ "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/03.BEM\345\221\275\345\220\215\350\247\204\350\214\203.md" @@ -0,0 +1,75 @@ +# BEM + +BEM 是一套针对 css 类样式的命名方法,是解决类名冲突的一种规范。 + +> 其他命名方法还有:OOCSS、AMCSS、SMACSS 等等 + +BEM 全称是:**B**lock **E**lement **M**odifier + +一个完整的 BEM 类名:block**element_modifier,例如:```banner**dot_selected```,可以表示:轮播图中,处于选中状态的小圆点 + +![](assets/2020-01-31-09-53-31.png) + +三个部分的具体含义为: + +- **Block**:页面中的大区域,表示最顶级的划分,例如:轮播图(`banner`)、布局(`layout`)、文章(`article`)等等 +- **element**:区域中的组成部分,例如:轮播图中的横幅图片(`banner__img`)、轮播图中的容器(`banner__container`)、布局中的头部(`layout__header`)、文章中的标题(`article_title`) +- **modifier**:可选。通常表示状态,例如:处于展开状态的布局左边栏(`layout__left_expand`)、处于选中状态的轮播图小圆点(`banner__dot_selected`) + +```css +.banner__container{ + xxx +} +.bannner__dots__selected{ + xxx +} + +/*允许*/ +.banner__containner img{ + xxx +} +``` + +在某些大型工程中,如果使用 BEM 命名法,还可能会增加一个前缀,来表示类名的用途,常见的前缀有: + +- **l**: layout,表示这个样式是用于布局的 +- **c**: component,表示这个样式是一个组件,即一个功能区域 +- **u**: util,表示这个样式是一个通用的、工具性质的样式 +- **j**: javascript,表示这个样式没有实际意义,是专门提供给 js 获取元素使用的 + +```css +.u-primary__box{ + xxx +} +``` + +## 实践 + +```html + + + + + + + Document + + + + + + + +``` diff --git "a/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/04.css-in-js.md" "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/04.css-in-js.md" new file mode 100644 index 0000000..1327a48 --- /dev/null +++ "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/04.css-in-js.md" @@ -0,0 +1,150 @@ +# css in js + +## 介绍 + +css in js 的核心思想是:用一个 JS 对象来描述样式,而不是 css 样式表 + +例如下面的对象就是一个用于描述样式的对象: + +```js +const styles = { + backgroundColor: "#f40", + color: "#fff", + width: "400px", + height: "500px", + margin: "0 auto", +}; +``` + +由于这种描述样式的方式**根本就不存在类名**,自然不会有类名冲突 + +至于如何把样式应用到界面上,不是它所关心的事情,你可以用任何技术、任何框架、任何方式将它应用到界面。 + +> 后续学习的 vue、react 都支持 css in js,可以非常轻松的应用到界面 + +css in js 的特点: + +- **绝无冲突的可能**:由于它根本不存在类名,所以绝不可能出现类名冲突 +- **更加灵活**:可以充分利用 JS 语言灵活的特点,用各种招式来处理样式 +- **应用面更广**:只要支持 js 语言,就可以支持 css in js,因此,在一些用 JS 语言开发移动端应用的时候非常好用,因为移动端应用很有可能并不支持 css +- **书写不便**:书写样式,特别是公共样式的时候,处理起来不是很方便 +- **在页面中增加了大量冗余内容**:在页面中处理 css in js 时,往往是将样式加入到元素的 style 属性中,会大量增加元素的内联样式,并且可能会有大量重复,不易阅读最终的页面代码 + +## 实践 + +**1.不存在类名冲突** +::: code-group + +```html + + + + + + Document + + + +
+
+ + + +``` + +```js [scripts/index.js] +import { applyStyles } from "./apply.js"; + +const style = { + width: "500px", + height: "500px", + backgroundColor: "#f55", + color: "#fff", + border: "2px solid #333", + margin: "0 auto", +}; + +const box1 = document.querySelector("#box1"); +const box2 = document.querySelector("#box2"); + +applyStyles(box1, style); //将style应用到页面dom +applyStyles(box2, style); +``` + +```js [scripts/utils.js] +/** + * 将样式应用到页面 + * @param {*} dom dom元素 + * @param {*} styles 样式对象 + */ +export function applyStyles(dom, styles) { + for (const key in styles) { + const value = styles[key]; + dom.style[key] = value; + } +} +``` + +::: +**2.再看一下 css in js 的灵活性** + +主要是对 apply.js 进行了更改 + +::: code-group + +```js [utils.js] +/** + * 将样式应用到页面 + * @param {*} dom dom元素 + * @param {*} styles 样式对象 + */ +export function applyStyles(dom, ...styles) { + let resStyles = {}; //最终合并的对象 + //合并一下属性,剩余运算符保证函数可以传入多个参数 + for (const style of styles) { + resStyles = { ...resStyles, ...style }; + } + + for (const key in resStyles) { + const value = resStyles[key]; + dom.style[key] = value; + } +} +``` + +```js [scripts/common.js] +// 公共样式,对公共的样式进行抽离 +export const redBG = { + backgroundColor: "#f55", +}; + +// 可以将样式写成函数,更加灵活 +export const border = (width = 2, color = "#ebeef5") => { + return { + border: `${width}px solid ${color}`, + }; +}; +``` + +```js [index.js] +import { applyStyles } from "./apply.js"; +import { border, redBG } from "./common.js"; + +const style = { + width: "500px", + height: "500px", + color: "#fff", + margin: "0 auto", +}; + +const box1 = document.querySelector("#box1"); +const box2 = document.querySelector("#box2"); + +applyStyles(box1, style, redBG, border(1, "#333")); //使用样式,添加到dom +applyStyles(box2, style, redBG, border()); +``` + +::: +**css in js 在移动端的应用更加广泛,跨平台也更方便,我们不需要关注怎么将样式应用到页面,那是由平台框架所提供的。** + +**在 PC 样式是 css,而在移动端就不一样了,各有差异** diff --git "a/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/05.css-module.md" "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/05.css-module.md" new file mode 100644 index 0000000..03eae95 --- /dev/null +++ "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/05.css-module.md" @@ -0,0 +1,187 @@ +# css module {ignore} + +> 通过命名规范来限制类名太过死板,而 css in js 虽然足够灵活,但是书写不便。 +> css module 开辟一种全新的思路来解决类名冲突的问题 + +## 思路 + +css module 遵循以下思路解决类名冲突问题: + +1. css 的类名冲突往往发生在大型项目中 +2. 大型项目往往会使用构建工具(webpack 等)搭建工程 +3. 构建工具允许将 css 样式切分为更加精细的模块 +4. 同 JS 的变量一样,每个 css 模块文件中难以出现冲突的类名,冲突的类名往往发生在不同的 css 模块文件中 +5. 只需要保证构建工具在合并样式代码后不会出现类名冲突即可 + +![](assets/2020-01-31-13-54-37.png) + +## 实现原理 + +在 webpack 中,作为处理 css 的 css-loader,它实现了 css module 的思想,要启用 css module,需要将 css-loader 的配置`modules`设置为`true`。 + +css-loader 的实现方式如下: + +![](assets/2020-01-31-14-00-56.png) + +原理极其简单,开启了 css module 后,css-loader 会将样式中的类名进行转换,转换为一个唯一的 hash 值。 + +**由于 hash 值是根据模块路径和类名生成的**,因此,不同的 css 模块,哪怕具有相同的类名,转换后的 hash 值也不一样。 + +![](assets/2020-01-31-14-04-11.png) + +## 如何应用样式 + +css module 带来了一个新的问题:源代码的类名和最终生成的类名是不一样的,而开发者只知道自己写的源代码中的类名,并不知道最终的类名是什么,那如何应用类名到元素上呢? + +为了解决这个问题,css-loader 会导出原类名和最终类名的对应关系,该关系是通过一个对象描述的 + +![](assets/2020-01-31-14-08-49.png) + +这样一来,我们就可以在 js 代码中获取到 css 模块导出的结果,从而应用类名了 + +style-loader 为了我们更加方便的应用类名,会去除掉其他信息,仅暴露对应关系 + +## 其他操作 + +### 全局类名 + +某些类名是全局的、静态的,不需要进行转换,仅需要在类名位置使用一个特殊的语法即可: + +```css +:global(.main) { + ...; +} +``` + +使用了 global 的类名不会进行转换,相反的,没有使用 global 的类名,表示默认使用了 local + +```css +:local(.main) { + ...; +} +``` + +使用了 local 的类名表示局部类名,是可能会造成冲突的类名,会被 css module 进行转换 + +### 如何控制最终的类名 + +绝大部分情况下,我们都不需要控制最终的类名,因为控制它没有任何意义 + +如果一定要控制最终的类名,需要配置 css-loader 的`localIdentName` + +## 其他注意事项 + +- css module 往往配合构建工具使用 +- css module 仅处理顶级类名,尽量不要书写嵌套的类名,也没有这个必要 +- css module 仅处理类名,不处理其他选择器 +- css module 还会处理 id 选择器,不过任何时候都没有使用 id 选择器的理由 +- 使用了 css module 后,只要能做到让类名望文知意即可,不需要遵守其他任何的命名规范 + +## 实践 + +::: code-group [index.html] + +```html + + + + + + + Document + + + +
asdfasdfasf
+
Lorem ipsum dolor sit.
+ + +``` + +```css [src/assets/style1.css] +.c1 { + color: red; +} + +.c2 { + font-size: 18px; +} +``` + +```css [src/assets/style2.css] +.c1 { + color: #ccc; +} + +.c2 { + font-size: 20px; +} +``` + +```js [src/index.js] +const style1 = require("./assets/style1.css"); +const style2 = require("./assets/style2.css"); + +/* +对css module的使用很简单 +1.css-loader内部实现了css module的规范,只需要给css-loader配置项开启modules选项 +2.style-loader又对css-loader的返回做了处理,引入css模块的时候,会给出一个对应hash的配置对象 +3.添加类名的时候使用即可。 +*/ +console.log(style1); +console.log(style2); +const div = document.querySelector(".div1"); +div.className = `${style1.c1} ${style1.c2}`; + +/* +注意 +1.只会对类名进行hash话,对id,标签选择器不会 +2.我们写类名的时候不需要再使用嵌套了,只需要对起的类名望文生义即可 +*/ +``` + +```js [webpack.config.js] +const HtmlWebpackPlugin = require("html-webpack-plugin"); + +module.exports = { + mode: "development", + devtool: "source-map", + devServer: { + open: true, + }, + // + module: { + //常用的是这种配置 + rules: [{ test: /\.css$/, use: ["style-loader", "css-loader?modules"] }], + // rules: [ + // { + // test: /\.css$/, + // use: [ + // "style-loader", + // { + // loader: "css-loader", + // options: { + // modules: { + // // 控制输出的name格式 + // localIdentName: "[local]-[hash:5]", + // }, + // }, + // }, + // ], + // }, + // ], + }, + // + plugins: [ + new HtmlWebpackPlugin({ + template: "./public/index.html", + }), + ], + // + stats: { + colors: true, //输出信息带颜色 + modules: false, //是否输出打包的文件 + }, +}; +``` +::: diff --git "a/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/06.Less\347\232\204\344\275\277\347\224\250.md" "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/06.Less\347\232\204\344\275\277\347\224\250.md" new file mode 100644 index 0000000..7a211f0 --- /dev/null +++ "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/06.Less\347\232\204\344\275\277\347\224\250.md" @@ -0,0 +1,315 @@ +# CSS 预编译器 {ignore} + +## 基本原理 + +编写 css 时,受限于 css 语言本身,常常难以处理一些问题: + +- 重复的样式值:例如常用颜色、常用尺寸 + + (使用less的变量解决) + +- 重复的代码段:例如绝对定位居中、清除浮动 + + (使用less的混合) + +- 重复的嵌套书写 + + (使用less的嵌套) + +由于官方迟迟不对 css 语言本身做出改进,一些第三方机构开始想办法来解决这些问题 + +其中一种方案,便是预编译器 + +预编译器的原理很简单,即使用一种更加优雅的方式来书写样式代码,通过一个编译器,将其转换为可被浏览器识别的传统 css 代码 + +![](assets/2020-02-03-11-48-45.png) + +目前,最流行的预编译器有**LESS**和**SASS**,由于它们两者特别相似,因此仅学习一种即可(本课程学习 LESS) + +![](assets/2020-02-03-11-50-05.png) + +> less 官网:http://lesscss.org/ +> less 中文文档 1(非官方):http://lesscss.cn/ +> less 中文文档 2(非官方):https://less.bootcss.com/ +> sass 官网:https://sass-lang.com/ +> sass 中文文档 1(非官方):https://www.sass.hk/ +> sass 中文文档 2(非官方):https://sass.bootcss.com/ + +## LESS 的安装和使用 + +less 是不会被浏览器所识别的,所以需要一个 lessc 来将 less 转为 css + +从原理可知,要使用 LESS,必须要安装 LESS 编译器 + +LESS 编译器是基于 node 开发的,可以通过 npm 下载安装 + +```shell +npm i -D less +``` + +安装好了 less 之后,它提供了一个 CLI 工具`lessc`,通过该工具即可完成编译 + +```shell +# lessc 需要被编译的less文件 编译less文件存放的css文件 +lessc less代码文件 编译后的文件 +``` + +试一试: + +新建一个`index.less`文件,编写内容如下: + +```less +// less代码 +@red: #f40; + +.redcolor { + color: @red; +} +``` + +运行命令: + +```shell +lessc index.less index.css +``` + +可以看到编译之后的代码: + +```css +.redcolor { + color: #f40; +} +``` + +## LESS 的基本使用 + +具体的使用见文档:https://less.bootcss.com/ + +### 引入 + +```less +//less是不会被浏览器所识别的,所以需要一个lessc来将less转为css +.my-div { + color: #f55; +} + +// less代码 +@red: #f40; + +.redcolor { + color: @red; +} +``` + +### 变量 + +```less +//1.变量 +@color: #f40; + +.box { + width: 100px; + height: 100px; + color: @color; +} + +.box2 { + width: 50px; + height: 50px; + color: @color; + background-color: blue; +} +``` + +### 混合 + +```less +//2混合 + +//--会被编译进css文件 +// .center { +// position: absolute; +// top: 50%; +// left: 50%; +// transform: translate(-50%, -50%); +// } + +//不会被编译进css文件 +// .center() { +// position: absolute; +// top: 50%; +// left: 50%; +// transform: translate(-50%, -50%); +// } +.center(@type: absolute) { + position: @type; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); +} + +.pox1 { + width: 100px; + height: 100px; + color: @color; + .center(); +} +``` + +### 嵌套 + +```less +// 嵌套 +.box3 { + .nav { + width: 100px; + height: 20px; + background-color: skyblue; + } + + & > span { + color: #333; + } + + &::before { + content: ""; + display: block; + width: 30px; + height: 20px; + } + + &.actived { + background-color: #666; + color: #236; + } +} +``` + +### 运算 + +```less +// 运算 +@width: 100cm; +@baseWidth: 200px; //基础宽度; + +.box4 { + width: @width + 10mm; +} + +.sidebar { + width: @baseWidth * 2; //页面山某个区域是基础宽度的2倍 +} +``` + +### 作用域 + +```less +// 作用域 +.box5 { + @height: 100px; + + .box-nav { + height: @height; + } +} + +.box6 { + height: @height; //编译的时候报错 +} +``` + +### 注释 + +```less +// less 注释,不会编译到css文件 +/* css 注释,会编译到css文件*/ +``` + +### 函数 + +```less +// 函数,less官方提供了一些比较常用的函数,需要的时候去查阅API即可 +@some: foo; + +div { + margin: if((2 > 1), 0, 3px); + color: if((iscolor(@some)), @some, black); +} + +// ### +@red: #f55; + +.common() { + width: 100%; + height: 50px; +} + +.div1 { + .common(); + background-color: darken(@red, 10%); +} + +.div2 { + .common(); + background-color: darken(@red, 20%); +} + +.div3 { + .common(); + background-color: darken(@red, 30%); +} +``` + +### 导入 + +```less +@import "library"; //library.less + +// @import "typo.css"; 会原封不动的放到编译后的css文件中 +``` + +## 实际开发中的文件管理 + +```js +// 实际开发中一般会创建类似下面的文件目录 +/* +-styles + -variable.less 存放变量 + -theme.less 覆盖variable.less,自己定义的主题 + -public.less 存放公共的类,混合 + -index.less 整合导入这些less模块文件 +*/ +``` + +::: code-group + +```less [variable.less] +// 存放颜色变量和尺寸,可能会有上百个,ElementUI和AntdUI就是这样提供的 +@info: #333; +@danger: #f40; +@success: green; +@warn: brown; +``` + +```less [theme.less] +// 存放主题,一般用来覆盖variable.less提供的变量 +@danger: red; +``` + +```less [public.less] +// 存放公共的样式和混合 +.center(@type: absolute) { + position: @type; + left: 50%; + top: 50%; + transform: translate(-50%, -50%); +} +``` + +```less [index.less] +@import "./variable.less"; +@import "./theme.less"; //一般这样去覆盖样式库提供的变量,达到自定义主题 +@import "./public.less"; +``` + +::: diff --git "a/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/07.\345\234\250webpack\344\270\255\344\275\277\347\224\250less.md" "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/07.\345\234\250webpack\344\270\255\344\275\277\347\224\250less.md" new file mode 100644 index 0000000..7e02a25 --- /dev/null +++ "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/07.\345\234\250webpack\344\270\255\344\275\277\347\224\250less.md" @@ -0,0 +1,136 @@ +# 在 webpack 中使用 less + +## 分析 less-loader + +**分析**: +webpack 打包的时候只认识 js,我们之前处理 css 的时候就依赖了 css-loader 和 style-loader。 +那么,我们想要让 webpack 打包 less 的时候,自然需要一个 loader 来转换代码,它就是 less-loader + +```js +/* +webpack只认识js +less ==> css ==> js ==>应用到页面 +less-loader css-loader style-loader +*/ +``` + +## 使用 + +**安装** + +```sh +pnpm i less less-loader -D +``` + +**引入** + +webpack.config.js + +```js +const HtmlWebpackPlugin = require("html-webpack-plugin"); + +module.exports = { + mode: "development", + devtool: "source-map", + // + devServer: { + open: true, + }, + // + module: { + rules: [ + { test: /\.css$/, use: ["style-loader", "css-loader"] }, + { + test: /\.less$/, + //先让less-loader解析less,然后让css转换,最后添加在页面 + use: ["style-loader", "css-loader", "less-loader"], + }, + ], + }, + // plugins + plugins: [ + new HtmlWebpackPlugin({ + template: "./public/index.html", + }), + ], +}; +``` + +最后执行 `npx wenpack` 就可以解析 less 了 + +## less 与其它解决变量的方案连用 + +目前我们学习了以下几个解决方案: + +1. BEM +2. Css Moudule +3. css in js +4. less + +less 可以与 1 2 连用,我们看最佳实践代码。 + +## 最佳实践 + +::: code-group + +```less [src/assets/index.less] +//[src/assets/index.less] +@color: red; + +.main { + color: @color; + font-size: 26px; +} + +// 与BEM连用,只需要正常书写BEM规范即可 +.main-nav { + background-color: skyblue; +} +``` + +```js [src/index.js] +//[src/index.js] + +//与css module连用,css-loader内部实现了css-module,只需要配置的时候打开选项即可,style-loader又进一步对css-loader导出的代码做了简化处理,直接导入less文件使用就可以了 +const lessStyle = require("./assets/index.less"); +console.log("我是入口", lessStyle); +// 使用 +const app = document.querySelector("#app"); +app.classList.add(lessStyle.main); +``` + +```js [webpack.config.js] +//[webpack.config.js] + +const HtmlWebpackPlugin = require("html-webpack-plugin"); + +module.exports = { + mode: "development", + devtool: "source-map", + // + devServer: { + open: true, + }, + // + module: { + rules: [ + // 处理css + { test: /\.css$/, use: ["style-loader", "css-loader"] }, + //处理less,并打开css-module,先让less-loader解析less + //然后让css-loader转换,最后style-loader添加在页面 + { + test: /\.less$/, + use: ["style-loader", "css-loader?modules", "less-loader"], + }, + ], + }, + // plugins + plugins: [ + new HtmlWebpackPlugin({ + template: "./public/index.html", + }), + ], +}; +``` + +::: diff --git "a/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/08.postcss.md" "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/08.postcss.md" new file mode 100644 index 0000000..3990eec --- /dev/null +++ "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/08.postcss.md" @@ -0,0 +1,571 @@ +# PostCss {ignore} + +> 本节课的内容和 webpack 无关!!! + +# 什么是 PostCss + +学习到现在,可以看出,CSS 工程化面临着诸多问题,而解决这些问题的方案多种多样。 + +如果把 CSS 单独拎出来看,光是样式本身,就有很多事情要处理。 + +既然有这么多事情要处理,何不把这些事情集中到一起统一处理呢? + +PostCss 就是基于这样的理念出现的。 + +PostCss 类似于一个编译器,可以将样式源码编译成最终的 CSS 代码 + +![](assets/2020-02-04-14-31-33.png) + +看上去是不是和 LESS、SASS 一样呢? + +但 PostCss 和 LESS、SASS 的思路不同,它其实只做一些代码分析之类的事情,将分析的结果交给插件,具体的代码转换操作是插件去完成的。 + +![](assets/2020-02-04-14-37-51.png) + +官方的一张图更能说明 postcss 的处理流程: + +![](assets/postcss-workflow.png) + +> 这一点有点像 webpack,webpack 本身仅做依赖分析、抽象语法树分析,其他的操作是靠插件和加载器完成的。 +> +> post-css 和 webpack 一样,只是对 css 代码进行分析,而转换的步骤都交给插件进行了。 + +官网地址:https://postcss.org/ +github 地址:https://github.com/postcss/postcss + +# 安装 + +PostCss 是基于 node 编写的,因此可以使用 npm 安装 + +```shell +npm i -D postcss +``` + +postcss 库提供了对应的 js api 用于转换代码,如果你想使用 postcss 的一些高级功能,或者想开发 postcss 插件,就要 api 使用 postcss,api 的文档地址是:http://api.postcss.org/ + +不过绝大部分时候,我们都是使用者,并不希望使用代码的方式来使用 PostCss + +因此,我们可以再安装一个 postcss-cli,通过命令行来完成编译 + +```shell +npm i -D postcss-cli +``` + +postcss-cli 提供一个命令,它调用 postcss 中的 api 来完成编译 + +命令的使用方式为: + +```shell +postcss 源码文件 -o 输出文件 +``` + +postcss 可以识别`.pcss`结尾的文件,vscode 安装一个`postcss`插件用来进行高亮和代码提示. + +# 配置文件 + +和 webpack 类似,postcss 有自己的配置文件,该配置文件会影响 postcss 的某些编译行为。 + +配置文件的默认名称是:`postcss.config.js` + +例如: + +```js +module.exports = { + map: false, //关闭source-map +}; +``` + +# 插件 + +光使用 postcss 是没有多少意义的,要让它真正的发挥作用,需要插件 + +postcss 的插件市场:https://www.postcss.parts/ + +下面罗列一些 postcss 的常用插件 + +## postcss-preset-env + +过去使用 postcss 的时候,往往会使用大量的插件,它们各自解决一些问题 + +这样导致的结果是安装插件、配置插件都特别的繁琐 + +于是出现了这么一个插件`postcss-preset-env`,它称之为`postcss预设环境`,大意就是它整合了很多的常用插件到一起,并帮你完成了基本的配置,你只需要安装它一个插件,就相当于安装了很多插件了。 + +安装好该插件后,在 postcss 配置中加入下面的配置 + +```js +module.exports = { + plugins: { + "postcss-preset-env": {}, // {} 中可以填写插件的配置 + }, +}; +``` + +该插件的功能很多,下面一一介绍 + +### 自动的厂商前缀 + +某些新的 css 样式需要在旧版本浏览器中使用厂商前缀方可实现 + +例如 + +```css +::placeholder { + color: red; +} +``` + +该功能在不同的旧版本浏览器中需要书写为 + +```css +::-webkit-input-placeholder { + color: red; +} +::-moz-placeholder { + color: red; +} +:-ms-input-placeholder { + color: red; +} +::-ms-input-placeholder { + color: red; +} +::placeholder { + color: red; +} +``` + +要完成这件事情,需要使用`autoprefixer`库。 + +而`postcss-preset-env`内部包含了该库,自动有了该功能。 + +如果需要调整**兼容的浏览器**范围,可以通过下面的方式进行配置 + +**方式 1:在 postcss-preset-env 的配置中加入 browsers** + +```js +module.exports = { + plugins: { + "postcss-preset-env": { + browsers: ["last 2 version", "> 1%"], + }, + }, +}; +``` + +**方式 2【推荐】:添加 .browserslistrc 文件** + +创建文件`.browserslistrc`,填写配置内容 + +``` +last 2 version +> 1% +``` + +**方式 3【推荐】:在 package.json 的配置中加入 browserslist** + +```json +"browserslist": [ + "last 2 version", + "> 1%" +] +``` + +`browserslist`是一个多行的(数组形式的)标准字符串。 + +它的书写规范多而繁琐,详情见:https://github.com/browserslist/browserslist + +一般情况下,大部分网站都使用下面的格式进行书写 + +``` +last 2 version +> 1% in CN +not ie <= 8 +``` + +- `last 2 version`: 浏览器的兼容最近期的两个版本 +- `> 1% in CN`: 匹配中国大于 1%的人使用的浏览器, `in CN`可省略 +- `not ie <= 8`: 排除掉版本号小于等于 8 的 IE 浏览器 + +> 默认情况下,匹配的结果求的是并集 + +你可以通过网站:https://browserl.ist/ 对配置结果覆盖的浏览器进行查询,查询时,多行之间使用英文逗号分割 + +> browserlist 的数据来自于[CanIUse](http://caniuse.com/)网站,由于数据并非实时的,所以不会特别准确 + +### 未来的 CSS 语法 + +CSS 的某些前沿语法正在制定过程中,没有形成真正的标准,如果希望使用这部分语法,为了浏览器兼容性,需要进行编译 + +过去,完成该语法编译的是`cssnext`库,不过有了`postcss-preset-env`后,它自动包含了该功能。 + +你可以通过`postcss-preset-env`的`stage`配置,告知`postcss-preset-env`需要对哪个阶段的 css 语法进行兼容处理,它的默认值为 2 + +```js +"postcss-preset-env": { + stage: 0 +} +``` + +一共有 5 个阶段可配置: + +- Stage 0: Aspirational - 只是一个早期草案,极其不稳定 +- Stage 1: Experimental - 仍然极其不稳定,但是提议已被 W3C 公认 +- Stage 2: Allowable - 虽然还是不稳定,但已经可以使用了 +- Stage 3: Embraced - 比较稳定,可能将来会发生一些小的变化,它即将成为最终的标准 +- Stage 4: Standardized - 所有主流浏览器都应该支持的 W3C 标准 + +了解了以上知识后,接下来了解一下未来的 css 语法,尽管某些语法仍处于非常早期的阶段,但是有该插件存在,编译后仍然可以被浏览器识别 + +#### 变量 + +未来的 css 语法是天然支持变量的 + +在`:root{}`中定义常用变量,使用`--`前缀命名变量 + +```css +:root { + --lightColor: #ddd; + --darkColor: #333; +} + +a { + color: var(--lightColor); + background: var(--darkColor); +} +``` + +> 编译后,仍然可以看到原语法,因为某些新语法的存在并不会影响浏览器的渲染,尽管浏览器可能不认识 +> 如果不希望在结果中看到新语法,可以配置`postcss-preset-env`的`preserve`为`false` + +#### 自定义选择器 + +```css +@custom-selector :--heading h1, h2, h3, h4, h5, h6; +@custom-selector :--enter :focus, :hover; + +a:--enter { + color: #f40; +} + +:--heading { + font-weight: bold; +} + +:--heading.active { + font-weight: bold; +} +``` + +编译后 + +```css +a:focus, +a:hover { + color: #f40; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + font-weight: bold; +} + +h1.active, +h2.active, +h3.active, +h4.active, +h5.active, +h6.active { + font-weight: bold; +} +``` + +#### 嵌套 + +与 LESS 相同,只不过嵌套的选择器前必须使用符号`&` + +```less +.a { + color: red; + & .b { + color: green; + } + + & > .b { + color: blue; + } + + &:hover { + color: #000; + } +} +``` + +编译后 + +```css +.a { + color: red; +} + +.a .b { + color: green; +} + +.a > .b { + color: blue; +} + +.a:hover { + color: #000; +} +``` + +## postcss-apply + +该插件可以支持在 css 中书写属性集 + +类似于 LESS 中的混入,可以利用 CSS 的新语法定义一个 CSS 代码片段,然后在需要的时候应用它 + +```less +:root { + --center: { + position: absolute; + left: 50%; + top: 50%; + transform: translate(-50%, -50%); + } +} + +.item { + @apply --center; +} +``` + +编译后 + +```css +.item { + position: absolute; + left: 50%; + top: 50%; + -webkit-transform: translate(-50%, -50%); + transform: translate(-50%, -50%); +} +``` + +> 实际上,该功能也属于 cssnext,不知为何`postcss-preset-env`没有支持 + +## postcss-color-function + +该插件支持在源码中使用一些颜色函数。(插件提供了一些函数,具体去官网搜索) + +```less +body { + /* 使用颜色#aabbcc,不做任何处理,等同于直接书写 #aabbcc */ + color: color(#aabbcc); + /* 将颜色#aabbcc透明度设置为90% */ + color: color(#aabbcc a(90%)); + /* 将颜色#aabbcc的红色部分设置为90% */ + color: color(#aabbcc red(90%)); + /* 将颜色#aabbcc调亮50%(更加趋近于白色),类似于less中的lighten函数 */ + color: color(#aabbcc tint(50%)); + /* 将颜色#aabbcc调暗50%(更加趋近于黑色),类似于less中的darken函数 */ + color: color(#aabbcc shade(50%)); +} +``` + +编译后 + +```css +body { + /* 使用颜色#aabbcc,不做任何处理,等同于直接书写 #aabbcc */ + color: rgb(170, 187, 204); + /* 将颜色#aabbcc透明度设置为90% */ + color: rgba(170, 187, 204, 0.9); + /* 将颜色#aabbcc的红色部分设置为90% */ + color: rgb(230, 187, 204); + /* 将颜色#aabbcc调亮50%(更加趋近于白色),类似于less中的lighten函数 */ + color: rgb(213, 221, 230); + /* 将颜色#aabbcc调暗50%(更加趋近于黑色),类似于less中的darken函数 */ + color: rgb(85, 94, 102); +} +``` + +## [扩展]postcss-import + +该插件可以让你在`postcss`文件中导入其他样式代码,通过该插件可以将它们合并 + +> 由于后续的课程中,会将 postcss 加入到 webpack 中,而 webpack 本身具有依赖分析的功能,所以该插件的实际意义不大 + +## stylelint + +> 官网:https://stylelint.io/ + +在实际的开发中,我们可能会错误的或不规范的书写一些 css 代码,stylelint 插件会即时的发现错误 + +由于不同的公司可能使用不同的 CSS 书写规范,stylelint 为了保持灵活,它本身并没有提供具体的规则验证 + +你需要安装或自行编写规则验证方案 + +通常,我们会安装`stylelint-config-standard`库来提供标准的 CSS 规则判定 + +安装好后,我们需要告诉 stylelint 使用该库来进行规则验证 + +告知的方式有多种,比较常见的是使用文件`.stylelintrc` + +```json +//.styleintrc +{ + "extends": "stylelint-config-standard" +} +``` + +此时,如果你的代码出现不规范的地方,编译时将会报出错误 + +```css +body { + background: #f4; +} +``` + +![](assets/2020-02-05-14-37-11.png) + +发生了两处错误: + +1. 缩进应该只有两个空格 +2. 十六进制的颜色值不正确 + +如果某些规则并非你所期望的,可以在配置中进行设置 + +```json +{ + "extends": "stylelint-config-standard", + "rules": { + "indentation": null + } +} +``` + +设置为`null`可以禁用该规则,或者设置为 4,表示一个缩进有 4 个空格。具体的设置需要参见 stylelint 文档:https://stylelint.io/ + +但是这种错误报告需要在编译时才会发生,如果我希望在编写代码时就自动在编辑器里报错呢? + +既然想在编辑器里达到该功能,那么就要在编辑器里做文章 + +安装 vscode 的插件`stylelint`即可,它会读取你工程中的配置文件,按照配置进行实时报错 + +> 实际上,如果你拥有了`stylelint`插件,可以不需要在 postcss 中使用该插件了 + +## 实践 + +::: code-group + +```css [/css/source.pcss] +.main { + color: #f40; + + transform: scale(2); +} + +/* 自动厂商前缀 */ +::placeholder { + color: red; +} + +div:has(> p) { + border: 1px solid red; +} + +/* 变量 */ +:root { + --lightColor: #ddd; + --darkColor: #333; + --center: { + position: absolute; + left: 50%; + top: 50%; + transform: translate(-50%, -50%); + } +} + +.light { + background-color: var(--lightColor); +} + +/* 自定义选择器 */ +@custom-selector :--heading h1, h2, h3, h4, h5, h6; +@custom-selector :--enter :focus, :hover; + +/* a:focus,a:hover */ +a:--enter { + color: #f40; +} + +/* h1,h2,h3,h4,h5,h6 */ +:--heading { + font-weight: bold; +} + +/* h1.active,h2.active,h3.active,h4.active,h5.active,h6.active */ +:--heading.active { + font-weight: bold; +} + +/* 嵌套 */ +.a { + color: red; + & .b { + color: green; + } + + & > .b { + color: blue; + } + + &:hover { + color: #000; + } +} + +/* 混入 */ +.item { + @apply --center; + width: 300px; + height: 300px; + background: #f55; +} + +/* post-css 函数 */ +body { + /* 使用颜色#aabbcc,不做任何处理,等同于直接书写 #aabbcc */ + color: color(#aabbcc); + /* 将颜色#aabbcc透明度设置为90% */ + color: color(#aabbcc a(90%)); + /* 将颜色#aabbcc的红色部分设置为90% */ + color: color(#aabbcc red(90%)); + /* 将颜色#aabbcc调亮50%(更加趋近于白色),类似于less中的lighten函数 */ + color: color(#aabbcc tint(50%)); + /* 将颜色#aabbcc调暗50%(更加趋近于黑色),类似于less中的darken函数 */ + color: color(#aabbcc shade(50%)); +} +``` + +```js [/postcss.config.js] +module.exports = { + map: false, //关闭source-map + plugins: { + "postcss-preset-env": {}, //post css 的预设插件 + "postcss-apply": {}, //支持兼容现代的css语法 + "postcss-color-function": {}, //支持该插件的颜色函数 + // "stylelint":{} //规范代码标准 + }, +}; +``` + +执行`postcss css/source.pcss -o css/out.css -w`看编译结果 +::: diff --git "a/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/09.\345\234\250webpack\344\270\255\344\275\277\347\224\250postcss.md" "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/09.\345\234\250webpack\344\270\255\344\275\277\347\224\250postcss.md" new file mode 100644 index 0000000..cd2a395 --- /dev/null +++ "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/09.\345\234\250webpack\344\270\255\344\275\277\347\224\250postcss.md" @@ -0,0 +1,123 @@ +# 在 webpack 中使用 postcss + +```js +未来的 css 语法 --> 普通的 css --> js --> 页面 style 元素 + postcss css-loader style-loader +``` + +## 步骤 + +- 搭建 webpack 环境,需要安装 + +```sh +webpack +webpack-cli +html-webpack-plugin +``` + +- 准备.pcss 文件,在 index.js 引入 +- 下载 postcss 和 postcss-loader + +```sh +#因为转换css代码依靠的是postcss的一个函数,这里就不需要使用postcss-cli了,直接使用loader +pnpm i postcss postcss-loader -D +``` + +配置 postcss.config.js 文件,文件需要 postcss 插件[postcss-preset-env] +配置.browserslistrc 文件 + +- 下载安装 css-loader 和 style-loader,并在 webpack 中配置 + +```sh +pnpm i css-loader style-loader -D +``` + +- 最后,如果有需要 css 的校验,那么可以直接依靠 vscode 的 style-lint 插件,提供一个.stylelintrc + +## 总结 + +在 webpack 中使用 postcss,只是不需要 postcss-cli 命令行工具,别的没有什么差别。 + +## 实践 + +这里只需要参考 webpack.config.js 和 postcss.config.js 即可,重点看里面的配置和插件 +::: code-group + +```json [package.json] +{ + "name": "test", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "build": "webpack", + "dev": "webpack-dev-server" + }, + "author": "", + "license": "ISC", + "devDependencies": { + "css-loader": "^3.4.2", + "html-webpack-plugin": "^3.2.0", + "postcss": "^7.0.26", + "postcss-loader": "^3.0.0", + "postcss-preset-env": "^6.7.0", + "style-loader": "^1.1.3", + "stylelint-config-standard": "^19.0.0", + "webpack": "^4.41.5", + "webpack-cli": "^3.3.10", + "webpack-dev-server": "^3.10.3" + } +} +``` + +```js [webpack.comfig.js] +const HtmlWebpackPlugin = require("html-webpack-plugin"); + +module.exports = { + mode: "development", + devtool: "source-map", + // + devServer: { + open: true, + }, + // + module: { + rules: [ + { + test: /\.(css|pcss)$/, + use: ["style-loader", "css-loader?modules", "postcss-loader"], + }, + ], + }, + + // + plugins: [ + new HtmlWebpackPlugin({ + template: "./public/index.html", + }), + ], +}; +``` + +```js [postcss.config.js] +module.exports = { + map: false, //关闭source-map + plugins: { + "postcss-preset-env": { + stage: 0, //哪怕是处于草案阶段的语法,也需要转换 + preserve: false, + }, + }, +}; +``` + +```json [.stylelintrc] +{ + "extends": "stylelint-config-standard", + "rules": { + "indentation": 4 + } +} +``` + +::: diff --git "a/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/10.\345\260\206css\346\212\275\347\246\273\346\210\220\346\226\207\344\273\266.md" "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/10.\345\260\206css\346\212\275\347\246\273\346\210\220\346\226\207\344\273\266.md" new file mode 100644 index 0000000..b233571 --- /dev/null +++ "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/10.\345\260\206css\346\212\275\347\246\273\346\210\220\346\226\207\344\273\266.md" @@ -0,0 +1,194 @@ +# 抽离 css 文件 + +目前,css 代码被 css-loader 转换后,交给的是 style-loader 进行处理。 + +style-loader 使用的方式是用一段 js 代码,将样式加入到 style 元素中。 + +而实际的开发中,我们往往希望依赖的样式最终形成一个 css 文件 + +此时,就需要用到一个库:`mini-css-extract-plugin` + +该库提供了 1 个 plugin 和 1 个 loader + +- plugin:负责生成 css 文件 +- loader:负责记录要生成的 css 文件的内容,同时导出开启 css-module 后的样式对象 + +使用方式: + +```js +const MiniCssExtractPlugin = require("mini-css-extract-plugin"); +module.exports = { + module: { + rules: [ + //负责记录css内容 + { + test: /\.css$/, + use: [MiniCssExtractPlugin.loader, "css-loader?modules"], + }, + ], + }, + plugins: [ + new MiniCssExtractPlugin(), //负责生成css文件 + ], +}; +``` + +**配置生成的文件名** + +同`output.filename`的含义一样,即根据 chunk 生成的样式文件名 + +配置生成的文件名,例如`[name].[contenthash:5].css` + +```js +new MiniCssExtractPlugin({ + filename: "css/[name].[contenthash:5].css", +}); //负责生成css文件 +``` + +**默认情况下,每个 chunk 对应一个 css 文件** + +```js + entry: { + main: "./src/index.js", //会生成main.js和main.css + a: "./src/a.js", //a.js和a.css + }, +``` + +## 实践 + +- 搭建 webpack 环境,package.json 依赖如下 +- 创建对应的文件目录 +- 配置 webpack.config.js + +:::code-group + +```sh [目录] +--dist; +--public; + --index.html; +--src; + --assets; + --imgs; + --webnpack.jpg; + --index.css; + --a.css; + --index.js; //入口文件 + --a.js; //第二入口 +--webpack.config.js; +``` + +```json [package.json] +{ + "name": "test", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "build": "webpack", + "dev": "webpack-dev-server" + }, + "author": "", + "license": "ISC", + "devDependencies": { + "clean-webpack-plugin": "^3.0.0", + "css-loader": "^3.4.2", + "file-loader": "^5.0.2", + "html-webpack-plugin": "^3.2.0", + "mini-css-extract-plugin": "^0.9.0", + "style-loader": "^1.1.3", + "webpack": "^4.41.5", + "webpack-cli": "^3.3.10", + "webpack-dev-server": "^3.10.3" + } +} +``` + +```js [index.js] +import "./assets/index.css"; +``` + +```js [a.js] +//MiniCssExtractPlugin插件的loader也会将css-loader处理好的内容导出。 +import styleB from "./assets/b.css"; +console.log(styleB); +``` + +```css [index.css] +@import "./a.css"; /*会被打包到同一个css文件中,类似js打包出来的bundle*/ + +.main { + width: 500px; + height: 300px; + background: url("./img/china.jpg"); + background-size: 100% 100%; +} +``` + +```css [a.css] +.a { + color: #f55; +} +``` + +```js [webpack.config.js] +const HtmlWebpackPlugin = require("html-webpack-plugin"); +const { CleanWebpackPlugin } = require("clean-webpack-plugin"); +const MiniCssExtractPlugin = require("mini-css-extract-plugin"); + +module.exports = { + mode: "development", + devtool: "source-map", + // + devServer: { + open: true, + }, + // + entry: { + main: "./src/index.js", + a: "./src/a.js", + }, + // + output: { + filename: "js/[name].[chunkhash:5].js", + publicPath: "/", //css中引用了图片,打包之后图片路径会变成相对路径,需要配置publicPath + }, + // loader + module: { + rules: [ + //使用MiniCssExtractPlugin的静态方法loder + { + test: /\.css$/, + use: [MiniCssExtractPlugin.loader, "css-loader?modules"], + }, + //因为css中会产生图片的引用,所以需要file-loader + { + test: /\.jpg$/, + use: { + loader: "file-loader", + options: { + name: "img/[hash:5].[ext]", + }, + }, + }, + ], + }, + //plugin + plugins: [ + // + new HtmlWebpackPlugin({ + template: "./public/index.html", + // chunks: ["main"], + }), + // + new CleanWebpackPlugin(), + //使用MiniCssExtractPlugin插件生成css文件 + new MiniCssExtractPlugin({ + filename: "css/[name].[contenthash:5].css", + }), + ], +}; +``` + +::: + +最后,执行`pnpm run build`看打包结果。 diff --git "a/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/assets/2020-01-31-09-53-31.png" "b/src/views/note/12-webpack/03.css\345\267\245\347\250\213\345\214\226/assets/2020-01-31-09-53-31.png" new file mode 100644 index 0000000000000000000000000000000000000000..48d9a801fe37c8ec35130a4b5256608ff57a0fb2 GIT binary patch literal 189598 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%0A|cd}R2P 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
    9Q2xVXnCn|sg6+x9%l8SPd{f8mN625Zt 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