【webpack5】loader处理样式资源

webpack本身只能处理js、json,不能处理样式资源;
处理样式资源——借助loader

webpack loader 官方文档

css-loader

npm install --save-dev css-loader

资源需要在main中引入,main作为入口
将写好的css引入如图
在这里插入图片描述

npx webpack
在这里插入图片描述
报错信息表明需要一个loader

下载css-loader
npm install --save-dev css-loader

    //加载器
    module:{
        rules:[
            //loader的配置
            {
                test: /\.css$/,//检测.css结尾的文件
                use: [ //use执行顺序:从右到左(从下到上)
                    'style-loader', //将js中的css通过创建style标签添加html文件中生效
                    'css-loader' //将css资源编译成common.js到js中
                ]
            }
        ]
    },

loader要对哪个文件生效,就要在test里写正则匹配文件

npx webpack 报错
在这里插入图片描述
webpack文档没有把需要下载的所有依赖都写出来

这里用到了style-loader,所以还需要下载style-loader
npm i style-loader -D
在这里插入图片描述
下载后编译成功
在这里插入图片描述
dist里依然没有css文件,这是因为css打包到js里面了
在浏览器里打开,可以看到动态创建style标签插入到页面上
在这里插入图片描述

其它样式与css大同小异,以下为less部分内容

less-loader

{
    test: /\.less$/,
    use: [{
        loader: "style-loader" // creates style nodes from JS strings
    }, {
        loader: "css-loader" // translates CSS into CommonJS
    }, {
        loader: "less-loader" // compiles Less to CSS
    }]
}

之前的文档用的是loader:"xxx"而不是use:“xxx”,二者区别是loader:"xxx"只能使用一个loader,而use可以使用多个loader;(同本文中css的use配置方法,现在改成use里写loader貌似更加严谨了…)

sass-loader

安装:
npm install sass-loader node-sass webpack --save-dev

node-sass 和 webpack 是 sass-loader 的 peerDependency,因此能够精确控制它们的版本。

配置:

 {
    test: /\.scss$/,
     use: [{
         loader: "style-loader" // 将 JS 字符串生成为 style 节点
     }, {
         loader: "css-loader" // 将 CSS 转化成 CommonJS 模块
     }, {
         loader: "sass-loader" // 将 Sass 编译成 CSS
     }]
 }

stylus-loader

npm install stylus stylus-loader --save-dev
or
yarn add -D stylus stylus-loader
or
pnpm add -D stylus stylus-loader

 {
    test: /\.styl$/,
    use: [{
        loader: "style-loader" // 将 JS 字符串生成为 style 节点
    }, {
        loader: "css-loader" // 将 CSS 转化成 CommonJS 模块
    }, {
        loader: "stylus-loader" // 将 stylus 编译成 CSS
    }]
},
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值