webpack 入门教程
Webpack 是一个模块打包器。它将根据模块的依赖关系进行静态分析,然后将这些模块按照指定的规则生成对应的静态资源。
webpack是更优秀的模块依赖管理工具, require.js的所有功能它都有,而且它不需要写define定义模块,一切都是智能的。编绎过程更快,Webpack 使用异步 I/O 和多级缓存提高运行效率,这使得 Webpack 能够以令人难以置信的速度快速增量编译。 他在很多地方能替代 Grunt 跟 Gulp 因为他能够编译打包 CSS, 做 CSS 预处理, 编译 JS 方言, 打包图片, 还有其他一些. Webpack可以把任何资源当做模块,包括js文件,json文件,html文件,图片视频资源等。
1.安装
npm install -g webpack
2.使用
方法1:cli 下直接 webpack source.js dist.js就可以将source.js 编译成dist.js
方法2:使用配置文件
贴上我的配置文件 webpack.config.js
module.exports = {
entry: {
vendor: "./vendor.js",
src : "./entry.js"
},
output: {
path: 'build',
filename: "[name].js"
},
module: {
loaders: [
{test: /\.js$/, loader:'babel', exclude: /(node_modules|bower_components)/, query:{presets:['es2015']}},
{ test: /\.css$/, loader: "style!css" },
{ test: /\.html$/, loader: "html"},
{test: /\.(png|jpg)$/, loader: 'url-loader?limit=28192'},
]
}
};
推荐大家安装了webpack就把常用的loader安装上,会少出很多问题
bable安装必须注意下
npm install babel-loader babel-core babel-preset-es2015 --save-dev
如果需要把es6转换为es5,可以使用 {test: /\.js$/, loader:'babel', exclude: /(node_modules|bower_components)/, query:{presets:['es2015']}},
官网loader-list
http://webpack.github.io/docs/list-of-loaders.html
其他使用正在摸索中。。。