> 工作中使用的webpack配置文件:
var webpack = require('webpack');
var path = require('path');
var ExtractTextPlugin = require('extract-text-webpack-plugin'); //---css打包成link引入
var CommonsChunkPlugin = webpack.optimize.CommonsChunkPlugin; //---提取公用模块
var ProvidePlugin = webpack.ProvidePlugin //--变量替换
module.exports = {
watch: true,
entry: {
vendor : ['react','react-dom','redux','react-redux','router'],
app : './components/app.jsx',
},
output: {
path: __dirname,
filename: 'dest/bundle.js'
},
module: {
loaders: [
{
test: /\.jsx?$/,
loader: 'babel-loader',
query: {
presets: ['es2015','react']
}
},
{
test: /\.styl$/,
loader : ExtractTextPlugin.extract(['css','stylus'])//'style-loader!css-loader!stylus-loader'
},
{
test : /\.jade/,
loader : 'react-jade-loader?split=true'
}
]
},
resolve: {
extensions: ['', '.js', '.jsx'],
alias:{ //--定义别名
'router' : path.resolve(__dirname,'./statics/libs/router.js'),
'fetch' : path.resolve(__dirname,'./statics/libs/fetch.js')
}
},
plugins: [
new CommonsChunkPlugin({
name: "vendor",
filename : 'dest/common.js'
}),
new ProvidePlugin({}),
new ExtractTextPlugin("dest/libs.css",{allChunks: true})
]
};