码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • webpack如何处理css


    一、准备工作

    新建目录

    添加样式

    1. .word {
    2. color: red;
    3. }

    index.js添加dom元素,添加一个css word

    1. import './css/index.css';
    2. const div = document.createElement("div");
    3. div.innerText = "hello word!!!";
    4. div.className = "word";
    5. document.body.appendChild(div);

    然后把打包后的文件引入index.html

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    6. <title>Documenttitle>
    7. head>
    8. <body>
    9. <script src="./build/build.js">script>
    10. body>
    11. html>

    这个时候打包npm run build就会报错

    这个时候就需要loader处理我们的css

    二、css-loader

    首先安装我们需要的loader

    pnpm i -D css-loader

    添加配置文件,test正则匹配文件,loader对应我们的loader名称

    1. const path = require("path");
    2. /**
    3. * 类型提示
    4. * @type {import("webpack").Configuration}
    5. */
    6. const config = {
    7. entry: "./src/index.js",
    8. output: {
    9. filename: "build.js",
    10. path: path.resolve(__dirname, "./build"),
    11. },
    12. module: {
    13. rules: [
    14. {
    15. test: /\.css$/, //正则匹配文件
    16. use: [
    17. {
    18. loader: "css-loader",
    19. }
    20. ],
    21. },
    22. ],
    23. },
    24. };
    25. module.exports = config;

    这个时候打包会发现界面的样式没有成功

     

    这是因为css-loader只是处理,没有把我们的样式引入到对应的文件,我们需要另一个loader处理

    三、style-loader

    先安装后引入

    pnpm i -D style-loader
    1. module: {
    2. rules: [
    3. {
    4. test: /\.css$/, //正则匹配文件
    5. use: [
    6. {
    7. loader: 'style-loader',
    8. },
    9. {
    10. loader: "css-loader",
    11. },
    12. ],
    13. },
    14. ],
    15. },

    我们需要注意loader的顺序,从下往上执行,我们先处理css然后通过style-loader注入样式

    运行npm run build发现样式生效了

  • 相关阅读:
    JavaScript基础-简单易懂总结
    软件测试/测试开发丨利用人工智能自动找Bug
    【Aseprite】2D像素人物制作
    仅仅只是用脱虚向实或者脱实向虚来诠释和表达产业互联网是不全面的
    力扣labuladong——一刷day45
    .npmrc 使用详解
    虚拟机Linux如何做快照、备份以及快照的使用
    USACO 2021 December Contest, Silver
    使用Nacos bootstrap application 远程配置优先级
    [CakeCTF2022-09-04]CakeGEAR-Writeup
  • 原文地址:https://blog.csdn.net/QAEARQ/article/details/134676854
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号