webpack配置

entry

指示 webpack 应该使用哪个模块,来作为构建其内部 依赖图(dependency graph) 的开始。进入入口起点后,webpack 会找出有哪些模块和库是入口起点(直接和间接)依赖的.默认值是 ./src/index.js

output

告诉 webpack 在哪里输出它所创建的 bundle,以及如何命名这些文件。主要输出文件的默认值是 ./dist/main.js,其他生成文件默认放置在 ./dist 文件夹中

loader

webpack 只能理解 JavaScript 和 JSON 文件。loader 让 webpack 能够去处理其他类型的文件,并将它们转换为有效 模块,以供应用程序使用,以及被添加到依赖图中

plugin

loader 用于转换某些类型的模块,而插件则可以用于执行范围更广的任务。包括:打包优化,资源管理,注入环境变量。

代码解读


var webpack =require('webpack')

var path =require('path')//路径处理

var ExtractTextPlugin =require('extract-text-webpack-plugin')//插件

var autoprefixer =require('autoprefixer')//自动添加浏览器前缀

module.exports = {

entry:path.join(__dirname, "js/app/index.js"),//入口文件

    output: {

path:path.join(__dirname, "../public"), //导出的文件位置

        filename:"js/index.js"

    },

    module: {

rules: [{

test:/\.less$/,

            use:ExtractTextPlugin.extract({

fallback:"style-loader",

                    use: ["css-loader", "less-loader", "postcss-loader"]//less格式转换成css

                })//把 css 抽离出来生成一个文件

        }]

},

    resolve: {

alias: {

jquery:path.join(__dirname, "js/lib/jquery-2.0.3.min.js"), //取一个别称,导入的时候就可以简化

            mod:path.join(__dirname, "js/mod"),

            less:path.join(__dirname, "less")

}

},

    plugins: [

new webpack.ProvidePlugin({//全局导入

            $:"jquery"

        }),

        new ExtractTextPlugin("css/index.css"),

        new webpack.LoaderOptionsPlugin({

options: {

postcss: [

autoprefixer(),

                ]

}

})

]

};

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容