webpack1.x项目配置,在更新webpack版本时出现的问题解决css
问题一:html
resolve:{ // 引入文件不写后缀名配置 extensions:['', '.js','.jsx'] }
配置时 extensions 第一个参数不能是空,改成 extensions:['.js','.jsx']node
问题二:
配置postcss有误,webpack2.0以上再也不容许配置自定义属性,须要再plugin中定义
修改前webpack
postcss: [ require('autoprefixer') //调用autoprefixer插件,例如 display: flex ]
修改后
在 plugin中新增web
new webpack.LoaderOptionsPlugin({ options: { postcss: function () { return [autoprefixer]; } } })
问题三:
webpack-dev-server配置再也不有colors属性npm
devServer: { // colors: true, //终端中输出结果为彩色 historyApiFallback: true, //不跳转,在开发单页应用时很是有用,它依赖于HTML5 history API,若是设置为true,全部的跳转将指向index.html inline: true, //实时刷新 hot: true // 使用热加载插件 HotModuleReplacementPlugin }
问题四:json
使用加载器时再也不容许 省略‘-loader’后缀
修改前:babel
module: { loaders: [ { test: /\.(js|jsx)$/, exclude: /node_modules/, loader: 'babel' }, { test: /\.less$/, exclude: /node_modules/, loader: 'style!css!postcss!less' }, { test: /\.css$/, exclude: /node_modules/, loader: 'style!css!postcss' }, { test: /\.(png|gif|jpg|jpeg|bmp)$/i, loader:'url-loader?limit=5000' }, // 限制大小5kb { test: /\.(png|woff|woff2|svg|ttf|eot)($|\?)/i, loader:'url-loader?limit=5000'} // 限制大小小于5k ] }
修改后:less
module: { loaders: [ { test: /\.(js|jsx)$/, exclude: /node_modules/, loader: 'babel-loader' }, { test: /\.less$/, exclude: /node_modules/, loader: 'style-loader!css-loader!postcss-loader!less-loader' }, { test: /\.css$/, exclude: /node_modules/, loader: 'style-loader!css-loader!postcss-loader' }, { test: /\.(png|gif|jpg|jpeg|bmp)$/i, loader:'url-loader?limit=5000' }, // 限制大小5kb { test: /\.(png|woff|woff2|svg|ttf|eot)($|\?)/i, loader:'url-loader?limit=5000'} // 限制大小小于5k ] }
问题五:webpack-dev-server
postcss配置有误,更换引入的方式,建立postcss.config.js文件,添加代码以下:
var autoprefixer = require('autoprefixer'); module.exports = { plugins: { 'autoprefixer': {browsers: 'last 5 version'} } }
在webpack2.6版本 能够经过直接在webpack.config.js中添加以下代码使用:
plugins: [ new webpack.LoaderOptionsPlugin({ options: { postcss: function(){ return [ require("autoprefixer")({ browsers: ['ie>=8','>1% in CN'] }) ] } } }) ]
至此,更新了webpack之后执行npm start(看本身配置是怎样的,package.json的scripts配置),应该就能够跑起来了,有什么不对的地方,望指教。