webpack5的loader配置小白学习篇

 更新时间:2023年05月26日 11:28:36   作者:smallStone  
这篇文章主要为大家介绍了webpack5的loader配置非常适合webpack入门的小白学习,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

loader 用于各类资源的处理

loader用于处理其他类型资源;什么是其他类型?就是各个类型都行,例如:css,scss,sass,stylus,ts,png,jpg,jpeg,font,svg...你能想到的所有资源都可以通过此属性来处理,包括路径处理,文件处理,不支持的语言解析都可以通过这个处理。

这里我列6个:

babel-loader

ts-loader

css-loader

sass-loader

style-loader

MiniCssExtractPlugin.loader

以上这些都是关于js和css处理的loader。关于图片、字体等其他静态资源文件,我再以后的文章中会给大家介绍到。

js和css相关的loader

// webpack.config.js
...
module: {
    rules: [
        {
            test: /\.css$/, // 用于匹配文件,可以是字符串或者正则
            loader: 'css-loader', // 当只有一个的时候就用这个
            use: ['style-loader','css-loader',] // 当有多个的时候就用这个,执行顺序是从右向左
        },
        {
            test: /\.scss$/, // 用于匹配文件,可以是字符串或者正则
            loader: 'css-loader', // 当只有一个的时候就用这个
            use: [MiniCssExtractPlugin.loader, 'style-loader','css-loader', 'sass-loader'] // 执行顺序是从右向左
        },
        {
            test: /\.styl$/, // 用于匹配文件,可以是字符串或者正则
            loader: 'stylus-loader', // 当只有一个的时候就用这个
            use: [{
                loader: 'postcss-loader', // 如果loader带有参数,则使用此方式
                option: {
                    name: 'stylus'
                },
            },'css-loader', 'stylus-loader'] // 执行顺序是从右向左
        }
    ]
}
...

需要注意的是:此前我就已经说过css-loader是只吧css文件打包成模块。并未引用到html文件。因此需要引入到html文件,则需要在css-loader处理后在执行style-loader把处理后的css插入到html页面内使用(既生成一个style标签插入)。

sass-loader的使用前需要安装sass/node-sass

MiniCssExtractPlugin.loader其实也是个plugin,它可以把样式文件拎出来。变成一个css文件。既代码分割,样式分割。

// webpack.config.js
...
module: {},
plugins: [
    new MiniCssExtractPlugin({
        filename: '[name].min.css', // css名称
        chunkFileName: '[name].chunk_[id].css' // 异步引入的css名称
    })
]
...

这个chunk之前解释过这里再加强一下。chunkFileName就是异步引入的css文件。例如:按需加载的css。则就会走chunkFileName配置的名称。

以上就是webpack5的loader配置小白学习篇的详细内容,后续再讲plugin属性,此属性是最强,更多关于webpack5 loader配置的资料请关注脚本之家其它相关文章!

相关文章

  • js跑步算法的实现代码

    js跑步算法的实现代码

    这篇文章主要是对js跑步算法的实现代码进行了详细的分析介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2013-12-12
  • Bootstrap前端开发案例一

    Bootstrap前端开发案例一

    Bootstrap前端开发案例一,这篇文章能够帮助大家更还好的进行前端开发Bootstrap,相信大家会爱上Bootstrap
    2016-06-06
  • Javascript实现页面跳转的几种方式分享

    Javascript实现页面跳转的几种方式分享

    这篇文章介绍了Javascript实现页面跳转的几种方式,有需要的朋友可以参考一下
    2013-10-10
  • 微信小程序长按识别二维码的几种情况分析

    微信小程序长按识别二维码的几种情况分析

    最近接到需求,在小程序内部长按识别二维码添加个人微信,下面这篇文章主要给大家分析介绍了关于微信小程序长按识别二维码的几种情况,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-08-08
  • 使用JS实现一个Sleep函数的示例代码

    使用JS实现一个Sleep函数的示例代码

    这篇文章主要介绍了使用JS实现一个Sleep函数,实现 sleep 函数其实非常简单,主要是理解 JavaScript 中异步执行情况,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2022-06-06
  • 几个比较实用的JavaScript 测试及效验工具

    几个比较实用的JavaScript 测试及效验工具

    JavaScript 是一款强大的广泛运用于现代Web站点及应用的脚本语言。作为一个技艺精湛的 Web 开发者,掌握JavaScript可以增强用户的使用体验,提供交互及富客户端等功能。
    2010-04-04
  • JS解决Date对象在IOS中的“大坑” 以及时间格式兼容问题

    JS解决Date对象在IOS中的“大坑” 以及时间格式兼容问题

    这篇文章主要介绍了JS解决Date对象在IOS中的“大坑” 以及时间格式兼容问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • IE下使用cloneNode注意事项分享

    IE下使用cloneNode注意事项分享

    在开发百度“地裂特效”时,发现了一些匪夷所思的 bug,第一反应是特效本身的代码与页面上原有的脚本发生了冲突,经过调试发现,问题出现在 cloneNode 的应用上
    2012-11-11
  • 详细讨论JavaScript中的求值策略

    详细讨论JavaScript中的求值策略

    这篇文章主要介绍了详细讨论JavaScript中的求值策略,对求值策略感兴趣的同学,可以参考下
    2021-04-04
  • 一个报数游戏js版(约瑟夫环问题)

    一个报数游戏js版(约瑟夫环问题)

    随便给一个数 比如100,那么从1到100围成一个圆圈,然后就类似123123报数一样逢3就舍掉,一直这样轮询 那么最后剩下来的那个数是多少?
    2010-08-08

最新评论