先把配置文件拷贝出来
var path = require('path');
var webpack = require('webpack');var HtmlWebpackPlugin = require('html-webpack-plugin');
var ExtractTextPlugin = require('extract-text-webpack-plugin');
var TransferWebpackPlugin = require('transfer-webpack-plugin');
var newHtmlWebpackPlugin = function (filename, url) {
return new HtmlWebpackPlugin({
favicon:'./src/favicon.ico',
filename: filename,
template: url,
inject:false
});
};
module.exports = {
entry: {
//邮件
'email_create': './src/scripts/email-create.js',
'email_review': './src/scripts/email-review.js',
'email_send': './src/scripts/email-send.js',
'email_statistic': './src/scripts/email-statistic.js'
},
output: {
path: path.join(__dirname, 'dist'),
filename: './scripts/[name].js',
publicPath: ""
},
//devtool: "eval", //***上线关闭***
module: {
loaders: [
{
test: /\.html$/,
loader: 'html-loader'
},
{
test: /\.css$/,
loader: ExtractTextPlugin.extract("style-loader", "css-loader")
},
{
test: /\.(pdf.*|eot.*|woff.*|woff2.*|ttf.*|svg.*|png.*|jpg.*|gif.*)$/,
loader: 'file-loader?name=/images/[name].[ext]'
}
]
},
plugins: [
//把指定文件夹xia的文件复制到指定的目录
new TransferWebpackPlugin(
[
{from: 'audios', to: 'audios'}
],
path.resolve(__dirname,'./src')
),
// new webpack.optimize.UglifyJsPlugin({ //***上线打开***
// compress: {
// warnings: false
// },
// sourceMap: true,//这里的soucemap 不能少,可以在线上生成soucemap文件,便于调试
// mangle: true
// }),
new webpack.optimize.CommonsChunkPlugin('global', './scripts/bundle.js'),
new ExtractTextPlugin('styles/[name].css'),
new webpack.ProvidePlugin({
$: "jquery",
jQuery: "jquery",
"window.jQuery": "jquery"
}),
//邮件
newHtmlWebpackPlugin('email-create.html', './src/email-create.html'),
newHtmlWebpackPlugin('email-review.html', './src/email-review.html'),
newHtmlWebpackPlugin('email-send.html', './src/email-send.html'),
newHtmlWebpackPlugin('email-statistic.html', './src/email-statistic.html')
],
resolve:{
extensions: ['','.js','.json'],
alias: {
'jquery': path.join(__dirname, './src/scripts/lib/jquery-1.10.2.min.js')
}
},
devServer: { //***上线关闭***
historyApiFallback:false,
contentBase:"./dist",
hot: false,
inline: true,
proxy: {
'/*/*': {
changeOrigin: true,
//target: 'http://yx.nymph.cc',
target: 'http://test.nymph.cc',
secure: false,
}
}
}
};