var path = require("path");
var webpack = require("webpack"); var HtmlwebpackPlugin = require('html-webpack-plugin'); var node_modules = path.resolve(__dirname, 'node_modules');
var pathToReact = path.resolve(node_modules, 'react/dist/react.min.js');
var staticPath = 'assets'; module.exports = {
entry: [ //入口文件
'webpack/hot/dev-server',
'./app/Main.js'
],
output: {
path: path.resolve(__dirname, staticPath),
publicPath: "/",
filename: 'assets/dev/js/build.js'
},
resolve: {
extensions: ['', '.js', '.jsx', 'sass']
},
module: {
loaders: [
{
test: /\.js?$/,
exclude: node_modules,
loader: 'babel',
query: {
"presets": ["react", "es2015", "stage-0", "react-hmre"]
}
}, {
test: /\.sass$/,
loader: 'style!css!sass'
}, {
test: /\.(png|jpg)$/,
loader: 'url?limit=25000'
}
],
noParse: [pathToReact] //每当 Webpack 尝试去解析那个压缩后的文件,我们阻止它,因为这不必要。
},
plugins: [
new webpack.HotModuleReplacementPlugin(),
new webpack.NoErrorsPlugin(),
new ExtractTextPlugin("css/[name].css"), //单独使用style标签加载css并设置其路径
new HtmlWebpackPlugin({ //根据模板插入css/js等生成最终HTML
favicon:'./src/img/favicon.ico', //favicon路径
filename:'/view/index.html', //生成的html存放路径,相对于 path
template:'./app/index.html', //html模板路径
inject: 'body', //允许插件修改哪些内容,包括head与body,或者true
hash:true, //为静态资源生成hash值
minify:{ //压缩HTML文件
removeComments:true, //移除HTML中的注释
collapseWhitespace:false //删除空白符与换行符
}
})
]
};

1.entry参数定义了打包后的入口文件,数组中的所有文件会按顺序打包。每个文件进行依赖的递归查找,直到所有相关模块都被打包。

如有多个需要打包,写法如下:

entry: {
login: './js/login',
regist: './js/regist'
}

2.output参数定义了输出文件的位置,其中常用的参数包括:

  path: 打包文件存放的绝对路径
  publicPath: 网站运行时的访问路径
  filename: 打包后的文件名

最新文章

  1. Net设计模式实例之抽象工厂模式(Abstract Factory Pattern)
  2. DES加密中文乱码问题的解决
  3. *HDU1598 并查集
  4. Matlab生成M序列的伪随机码
  5. CXF学习(2) helloworld
  6. 能"干掉"苹果的中国"黑客"
  7. BAT面经
  8. Jmeter软件测试1--webservice测试
  9. LinkedBlockingQueue的put,add跟offer的区别(转)
  10. 创建的docker容器时间显示错误/date错误/时区错误
  11. B树及B+树
  12. centos7安装shipyard没有本地容器及镜像
  13. python全栈开发day76-博客主页
  14. PHP共享内存详解
  15. Python3基础 e记法示例
  16. Promise 执行顺序
  17. System.Threading.Tasks.Task引起的IIS应用程序池崩溃
  18. Python - 3.6 学习三
  19. Dreamweaver_CS6安装及破解文件
  20. WPF binding Tag

热门文章

  1. 10.hive安装
  2. ######<待随时补充>我的学习规划######
  3. memcached命令行、Memcached数据导出和导入
  4. 终于有人把“TCC分布式事务”实现原理讲明白了
  5. STL queue 常见用法详解
  6. K8s的kubectl常用命令
  7. centos7下NFS配置
  8. 24-Perl 数据库连接
  9. SQL SERVER 相关
  10. 使用webpack + momentjs时, 需要注意的问题