码农知识堂 - 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发现样式生效了

  • 相关阅读:
    以气象行业为例,浅谈在ToB/ToG行业中如何做好UI设计
    【Java 8 新特性】Java LocalDate
    C++提高编程:02 STL入门
    Openresty通过Lua+Redis 实现动态封禁IP
    python随机生成指定长度的字符串
    FinGPT:开源金融大型语言模型
    精心整理了优秀的GitHub开源项目,包含前端、后端、AI人工智能、游戏、黑客工具、网络工具、AI医疗等等,空闲的时候方便看看提高自己的视野
    如何注册Liberty大学并获取Perplexity Pro
    关于大模型是否开源的分析
    微信核酸检测预约小程序系统毕业设计毕设(4)开题报告
  • 原文地址:https://blog.csdn.net/QAEARQ/article/details/134676854
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号