WebPack详细入门教程(三)之loader加载器(eg:引入CSS)

WebPack详细入门教程之loader加载器


Loaders是webpack提供的最激动人心的功能之一了。通过使用不同的loader,webpack有能力调用外部的脚本或工具,实现对不同格式的文件的处理,比如说分析转换scss、less为css,或者把下一代的JS文件(ES6,ES7)转换为现代浏览器兼容的JS文件,对React的开发而言,合适的Loaders可以把React的中用到的JSX文件转换为JS文件。

1.首先一次性安装所有的依赖包

// npm一次性安装多个依赖模块,模块之间用空格隔开
npm install babel-loader babel babel-core css-loader style-loader url-loader file-loader less-loader less  --save-dev

2.下载完成后, 修改webpack.config.js配置, 将加载器引入

Loaders需要单独安装并且需要在webpack.config.js中的modules关键字下进行配置,Loaders的配置包括以下几方面:

每一个都可以有以下几个属性。 

1.test:一个用以匹配loaders所处理文件的拓展名的正则表达式(必须)
2.loader:loader的名称(必须)
3.include:手动添加必须处理的文件(文件夹)(可选);
4.exclude:排除屏蔽不需要处理的文件(文件夹) (可选);
5.query:为loaders提供额外的设置选项(可选)
module.exports = {
    devtool: 'eval-source-map',
    entry: __dirname + '/demo/js/main.js', //入口文件
    output: { //输出文件
        filename: 'index.js', //输出文件名
        path: __dirname + '/out' //输出文件路径
    },
    module: {
    	// rules为数组,保存每个加载器的配置
        rules: [
	     /*解析css*/
            {	
                test: /\.css$/,   // test属性必须配置,值为正则表达式,用于匹配文件
                
                //对同一个文件引入多个loader的方法。
                use: [ 
                    {
                        loader: "style-loader"   // loader属性必须配置,值为字符串
                    }, 
                    {
                        loader: "css-loader"
                    }
                ],
                
        exclude: /node_module/,   // 过滤,排除node_module目录下的文件
        include: /demo/   // 指定匹配文件的范围      
            }  
        ] 
    }
}

3.在项目文件夹下的src文件夹下创建index.css.

//index.css

body {
    background: #eee;
}

因为在webpack中所有文件都是模块, 所以必须要将css引入. 在刚刚的main.js中添加如下代码.

//引入外部css样式,下面两种写法都可以使用:

require('../css/index.css');
import '../css/index.css';

webpack打包页面就会有效果啦~

这里写图片描述

posted @ 2022-07-20 18:16  猫老板的豆  阅读(178)  评论(0编辑  收藏  举报