resolve配置
该配置有好几个属性,每个属性都有自己的功能
resolve的常用属性
- modules
- alias
- mainFields
- 查找到包后读取的顺序
- 比如读取boostrap,在node_modules中查找到boostrap文件夹,里面的package.json知名了main为该目录下的dist/js/boostrap,指明了style为该目录下的dist/css/bootstrap.css,这个时候,如果你配置的mainFields为[‘style’,‘main’]则先去找style对应的dist/css/bootstrap.css,找不到再去找main对应的dist/js/bootstrap
- mainFiles
- extensions
- 省略后缀后的查找顺序
- 比如import ‘./style’,没有写后缀,则会按照该属性配置的顺序去找对应后缀的文件
resolve的基本配置及属性含义
module.exports = {
resolve:{
modules:[path.resolve('node_modules')],//如果不配置这个,当查找模块的时候,会查找node_modules,找不到会去向上级查找。如果配置了这个,那么就只会在配置的路径下查找。多个路径,就增加数组元素
alias:{//别名
bootstrap:'bootstrap/dist/css/bootstrap.css'//代表bootstrap就是对应路径的文件
},
mainFields:['style','main'],//查找到的包的顺序
//mainFiles:[],//入口文件的名字 index.js
extensions:['.js','.css','.json','.vue'],//省略后缀后的查找顺序
}
}