一个常见的`webpack`配置文件

// 一个常见的`webpack`配置文件

const webpack = require('webpack');

const HtmlWebpackPlugin = require('html-webpack-plugin');

const ExtractTextPlugin = require('extract-text-webpack-plugin');

module.exports = {

        //加载器配置 

         //module.loaders 是最关键的一块配置。它告知 webpack 每一种文件都需要使用什么加载器来处理

        entry: __dirname + "/app/main.js", //已多次提及的唯一入口文件

        output: {

            path: __dirname + "/build",  //path: 打包好的资源存放的位置

            filename: "bundle-[hash].js"  //filename: 打包后的文件名

        },

        devtool: 'none',

        devServer: {

            contentBase: "./public", //本地服务器所加载的页面所在的目录

            historyApiFallback: true, //不跳转

            inline: true,

            hot: true

        },

        module: {

            rules: [{

                    test: /(\.jsx|\.js)$/,    //用于匹配加载器支持的文件格式的正则表达式

                    use: {

                        loader: "babel-loader"     //多个加载器通过"!"连接,加载器是从右向左开始使用的 //loader指定了要使用的加载器类型

                    },

                    exclude: /node_modules/

                }, {

                    test: /\.css$/,

                    use: ExtractTextPlugin.extract({

                        fallback: "style-loader",

                        use: [{

                            loader: "css-loader",

                            options: {

                                modules: true,

                                localIdentName: '[name]__[local]--[hash:base64:5]'

                            }

                        }, {

                            loader: "postcss-loader"

                        }],

                    })

                }

            }

        ]

    },

    plugins: [

        new webpack.BannerPlugin('版权所有,翻版必究'),

        new HtmlWebpackPlugin({

            template: __dirname + "/app/index.tmpl.html" //new 一个这个插件的实例,并传入相关的参数

        }),

        new webpack.optimize.OccurrenceOrderPlugin(),

        new webpack.optimize.UglifyJsPlugin(),

        new ExtractTextPlugin("style.css")

    ]

};

你可能感兴趣的:(一个常见的`webpack`配置文件)