详解webpack进阶之loader篇
webpack的loaders是一大特色,也是很重要的一部分。这遍博客我将分类讲解一些常用的laoder
一、loaders之预处理
- css-loader处理css中路径引用等问题
- style-loader动态把样式写入css
- sass-loaderscss编译器
- less-loaderless编译器
- postcss-loaderscss再处理
npminstall--save-devcss-loaderstyle-loadersass-loaderless-loaderpostcss-loader
栗子:
module:{
loaders:[
{test:/\.css$/,loader:"style!css?sourceMap!postcss"},
{test:/\.less$/,loader:"style!css!less|postcss"},
{test:/\.scss$/,loader:"style!css!sass|postcss"}
]
}
二、loaders之js处理
- babel-loader
- jsx-loader
npminstall--save-devbabel-corebabel-preset-es2015babel-loaderjsx-loader
栗子
新建一个名字为.babelrc的文件
{
"presets":["es2015","react"],
"plugins":["antd"]
}
新建一个名字为webpack.config.js文件
module.exports={
entry:'./entry.js',
output:{path:__dirname,
filename:'bundle.js'
},
module:{
loaders:[
{test:/\.js$/,loader:"babel",exclude:/node_modules/},
{test:/\.jsx$/,loader:"jsx-loader"}
{test:/.css$/,loader:'style!css'}]
}
};
三、loaders之图片处理
url-loader
npminstall--save-devurl-loadr
module:{
loaders:[
{test:/\.(jpg|png)$/,loader:"url?limit=8192"},
]
}
四、loaders之文件处理
file-loader
npminstall--save-devfile-loader
module:{
loaders:[
{
test:/\.(png|jpg|jpeg|gif|svg|woff|woff2|ttf|eot)$/,
loader:'file'
},
]
}
五、loaders之json处理
json-loader
npminstall--save-devjson-loader
module:{
loaders:[
{test:/\.json$/,loader:'json'},
]
}
六、loaders之html处理
raw-loader
npminstall--save-devraw-loader
module:{
loaders:[
{test:/\.html$/,loader:'raw'},
]
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。