webpack打包并将文件加载到指定的位置方法


Posted in Javascript onFebruary 22, 2018

使用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打包并将文件加载到指定的位置方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS 容错处理代码, 屏蔽错误信息
Mar 09 Javascript
javascript学习笔记(十八) 获得页面中的元素代码
Jun 20 Javascript
在页面加载完成后通过jquery给多个span赋值
May 21 Javascript
jQuery代码实现发展历程时间轴特效
Jul 30 Javascript
jQuery实现的导航下拉菜单效果示例
Sep 05 Javascript
KVM虚拟化技术之使用Qemu-kvm创建和管理虚拟机的方法
Oct 05 Javascript
bootstrap fileinput 上传插件的基础使用
Feb 17 Javascript
JavaScript标准对象_动力节点Java学院整理
Jun 27 Javascript
VUE中使用Vue-resource完成交互
Jul 21 Javascript
JavaScript实现的简单Tab点击切换功能示例
Jul 06 Javascript
JQuery Ajax执行跨域请求数据的解决方案
Dec 10 jQuery
Vue CLI3.0中使用jQuery和Bootstrap的方法
Feb 28 jQuery
vue2.0 elementUI制作面包屑导航栏
Feb 22 #Javascript
webpack将js打包后的map文件详解
Feb 22 #Javascript
浅谈用Webpack路径压缩图片上传尺寸获取的问题
Feb 22 #Javascript
深入理解ES6中let和闭包
Feb 22 #Javascript
vue+iview+less+echarts实战项目总结
Feb 22 #Javascript
在vscode中统一vue编码风格的方法
Feb 22 #Javascript
vue webpack打包优化操作技巧
Feb 22 #Javascript
You might like
利用PHP实现与ASP Banner组件相似的类
2006/10/09 PHP
phpmyadmin 访问被拒绝的真实原因
2009/06/15 PHP
PHP 数据结构 算法 三元组 Triplet
2011/07/02 PHP
destoon实现VIP排名一直在前面排序的方法
2014/08/21 PHP
Yii控制器中操作视图js的方法
2016/07/04 PHP
JavaScript 数组循环引起的思考
2010/01/01 Javascript
JQuery 选择和过滤方法代码总结
2010/11/19 Javascript
js保存当前路径(cookies记录)
2010/12/14 Javascript
Javascript base64编码实现代码
2011/12/02 Javascript
Jquery实现简单的动画效果代码
2012/03/18 Javascript
Extjs4中Form的使用之本地hiddenfield
2013/11/26 Javascript
JQuery中操作Css样式的方法
2014/02/12 Javascript
js中匿名函数的创建与调用方法分析
2014/12/19 Javascript
JavaScript合并两个数组并去除重复项的方法
2015/06/13 Javascript
JavaScript实现经典排序算法之插入排序
2016/12/28 Javascript
使用vue官方提供的模板vue-cli搭建一个helloWorld案例分析
2018/01/16 Javascript
如何使用VuePress搭建一个类型element ui文档
2019/02/14 Javascript
利用Promise自定义一个GET请求的函数示例代码
2019/03/20 Javascript
python paramiko实现ssh远程访问的方法
2013/12/03 Python
python实现逻辑回归的方法示例
2017/05/02 Python
Python实现快速傅里叶变换的方法(FFT)
2018/07/21 Python
一文秒懂python读写csv xml json文件各种骚操作
2019/07/04 Python
python3正则模块re的使用方法详解
2020/02/11 Python
纯CSS实现聊天框小尖角、气泡效果
2014/04/04 HTML / CSS
英国厨房与餐具用品为主的设计品牌:Joseph Joseph
2018/04/26 全球购物
销售人员自我评价
2014/02/01 职场文书
小学教师师德感言
2014/02/10 职场文书
网络编辑岗位职责范本
2014/02/10 职场文书
工商治理实习生的自我评价分享
2014/02/20 职场文书
教师演讲稿大全
2014/05/16 职场文书
典型事迹材料范文
2014/12/29 职场文书
高三毕业评语
2014/12/31 职场文书
工厂门卫岗位职责
2015/04/13 职场文书
python删除csv文件的行列
2021/04/06 Python
CSS3实现的侧滑菜单
2021/04/27 HTML / CSS
基于PostgreSQL/openGauss 的分布式数据库解决方案
2021/12/06 PostgreSQL