webpack之postcss集成

项目 为了 兼容各个浏览器,需要加各种 c3前缀,如果手动的加肯定 相对比较麻烦,但是现在有webpack,gulp之类的 工具可以自动给我们加上,可以说效率上加速不少。如果 配置中 做个happypack打包缓存的话,配置的时候需要注意下,自己也踩了坑。 

关键的一步就是:

{
	test: /\.(css|scss)$/,
	loader: ExtractTextPlugin.extract('style',(NODE_ENV=='dev')?'happypack/loader?id=sass':'css!postcss!sass')
}

  

如果是 开发环境 就 用'happypack/loader?id=sass',是线上部署环境就用 'css!postcss!sass', 这个代表  'css-loader!postcss-loader!sass-loader'的省略,因为在开发的时候我们可以利用缓存打包,不需要添加前缀 可以加速我们打包的速度 

另外在生产环境需要加上

commonOptions.postcss = [
	require('autoprefixer')({
		browsers: ['last 10 Chrome versions', 'last 5 Firefox versions', 'Safari >= 6', 'ie > 8']
	})
 ];

  注意:commonOptions 是我本地 配置的一个 对象,

如:entry  ,postcss ,plugins就是commonOptions的属性值

 

昨天在 配置这个的时候 就是因为忘记了 加sass-loader,弄的打包不能 完成 ,因为 项目是用scss的格式 管理的,所以 需要 用  'css-loader!postcss-loader!sass-loader'的顺序。

 

posted @ 2017-08-08 11:07  lanyan  阅读(429)  评论(0编辑  收藏  举报