我的webpack配置文件

来源:互联网 发布:网站主持人源码 编辑:程序博客网 时间:2024/05/19 02:19


先把配置文件拷贝出来


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,
            }
        }
    }
};
0 0