概述
这次给大家带来如何操作webpack处理文件,操作webpack处理文件的注意事项有哪些,下面就是实战案例,一起来看一下。
使用webpack打包,最爽的事情莫过于可以直接require文件了,但是这
同时带来了一个问题,就是所有的文件整合到一起,那这一个包就太大了。
基于此:下面我们来了解下webpack的打包(主要是将如何将我们需要的内容模块,分开打包,
并且按照我们自己设定的存放路径进行存放)
首先在webpack.config.js文件中
entry入口函数出表示出哪些是需要单独打包成一个js包的:
entry: {
main: path.resolve(dirname,'src/index.js'),
jq: ['jquery'],
react: ['react'],
redom: ['react-dom']
},
output: {
path: path.resolve(dirname,'dist'),
publishPath: 'dist/',
filename: '[name].js'
},
plugin: [
new webpack.optimize.CommonsChunkPlugin('jq','jq.js'),
new webpack.optimize.CommonsChunkPlugin('vendors','vendors.js'),
new webpack.optimize.CommonsChunkPlugin('redom','redom.js')
]
登录后复制
如上配置,这样在文件生成的时候dist目录下就会增加jq.js,vendors.js,redom.js这三个js了
以上解决了我们要打包多个包的问题;
那如果我们想要将打包好的js存放在指定的位置又要如何进行操作呢,不用着急,下面就来具体
的实现以下(其实区别主要是在entry入口函数那儿):
entry: {
'./common/main': path.resolve(dirname,'src/index.js'),
'./jquery/jq': ['jquery'],
'./react/react': ['react'],
'./reactdom/redom': ['react-dom']
},
登录后复制
如上所示这样四个js就会分别存放到我们制定的dist下的四个文件夹中了。(标注:这时候就不
需要用到webpack.optimize.CommonsChunkPlugin插件了)
最后贴上左右的webpack.config.js代码:
var webpack = require('webpack');
var path = require('path');
module.exports = {
entry: {
'./common/main': path.resolve(dirname,'src/index.js'),
'./jquery/jq': ['jquery'],
'./react/react': ['react'],
'./reactdom/redom': ['react-dom']
},
output: {
path: path.resolve(dirname,'dist'),
publishPath: 'dist/',
filename: '[name].js'
},
module: {
loaders: [
{
test: /.scss$/,
loader: 'style!css!sass'
},
{
test: /.js$/,
exclude: /node_modules|vue/dist|vue-router/|vue-loader/|vue-hot-reload-api/|presets//,
loader: 'babel'
},
{
test: /.(png|jpg|gif)$/,
loader: 'url?limit=40000'
}
]
},
babel: {
presets: ['es2015','stage-0','react'],
plugins: ['transform-runtime',["antd",{"style": "css"}]]
},
resolve: ['js','jsx','css'],
plugins:[
new webpack.ProvidePlugin({
$:"jquery",
jQuery:"jquery",
"window.jQuery":"jquery"
})
// new webpack.optimize.CommonsChunkPlugin('jq','jq.js'),
// new webpack.optimize.CommonsChunkPlugin('vendors','vendors.js'),
// new webpack.optimize.CommonsChunkPlugin('redom','redom.js')
]
};
登录后复制
相信看了本文案例你已经掌握了方法,更多精彩请关注靠谱客其它相关文章!
推荐阅读:
webpack如何动态引入文件
用CDN的react webpack打包文件
微信小程序的圆形进度条怎么做
以上就是如何操作webpack处理文件的详细内容,更多请关注靠谱客其它相关文章!
最后
以上就是忧伤万宝路为你收集整理的如何操作webpack处理文件的全部内容,希望文章能够帮你解决如何操作webpack处理文件所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复