webpack多入口多出口的实现方法


Posted in Javascript onAugust 17, 2018

webpack是一个优秀的打包平台, 可以把sass, 图片, 字体等静态资源全部打包到js中

作者最近在改造一个传统的静态网站, 为了减少http请求, 其中一个策略就是,把单个静态网页对应的多个静态资源(如字体, css, 图片, js), 打包输出到一个js文件中, 然后让每个html与对应独立的js相关联就可以了

我在网上找了webpack配置的相关资料, html与js的对应关系都是, "一对一", "多对一", 但很少有"多对多"的实现

但经过一番折腾, 最终还是被我配置出来了,这里分享一下配置文件相关的语法

//entry入口文件支持json的形式
  entry: {
    "static/pc/js/index": "./webStatic/pc/js/index.js",
    "static/pc/js/article-details": "./webStatic/pc/js/article-details.js",
    "static/mobile/js/index": "./webStatic/mobile/js/index.js",
    "static/mobile/js/article-details": "./webStatic/mobile/js/article-details.js"
  },
  output: {
    path: path.resolve(__dirname, ''),
    //filename前面我们可以使用一个变量[name],这个就表示获取entry里面的key作为文件名加在前面
    filename: '[name].js'
  }

配置说明

根目录下 webStatic 为源码放置的位置, 根目录下 static 为js输出的的位置

配置文件共进行了四个映射: webStatic/pc/js/index.js 输出到 static/pc/js/index.js , ./webStatic/pc/js/article-details.js 输出到 static/pc/js/article-details.js , ./webStatic/mobile/js/index.js 输出到 static/mobile/js/index.js , ./webStatic/mobile/js/article-details.js 输出到 static/mobile/js/article-details.js

以后添加其它映射, 只需在 entry 内,按照格式添加即可(对着抄就行)

小结:

对古老的网站进行维护, 短时间内用 react 或 vue 组件化重写全部页面不太现实,但用webpack做个打包, 还是可行性的, 配置好webpack多入口多出口,只需对网站进行少量的改动, 就可以愉快的用scss, es6, 等语法写网站了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript设置FieldSet展开与收缩
May 15 Javascript
js getElementsByTagName的简写方式
Jun 27 Javascript
jquery实现TAB选项卡鼠标经过带延迟效果的方法
Jul 27 Javascript
浅谈JS之tagNaem和nodeName
Sep 13 Javascript
js html css实现复选框全选与反选
Oct 09 Javascript
PHP捕捉异常中断的方法
Oct 24 Javascript
实例详解display:none与visible:hidden的区别
Mar 30 Javascript
AngularJS 支付倒计时功能实现思路
Jun 05 Javascript
解决Webpack 热部署检测不到文件变化的问题
Feb 22 Javascript
详解JavaScript 为什么要有 Symbol 类型?
Apr 03 Javascript
Layui实现数据表格默认全部显示(不要分页)
Oct 26 Javascript
Vue(定时器)解决mounted不能获取到data中的数据问题
Jul 30 Javascript
angular2/ionic2 实现搜索结果中的搜索关键字高亮的示例
Aug 17 #Javascript
layer.open关闭父窗口 以及调用父页面的方法
Aug 17 #Javascript
vue+element的表格实现批量删除功能示例代码
Aug 17 #Javascript
vue富文本框(插入文本、图片、视频)的使用及问题小结
Aug 17 #Javascript
浅析vue给不同环境配置不同打包命令
Aug 17 #Javascript
React中使用async validator进行表单验证的实例代码
Aug 17 #Javascript
JavaScript实现构造json数组的方法分析
Aug 17 #Javascript
You might like
php二分法在IP地址查询中的应用
2008/08/12 PHP
php中一个完整表单处理实现代码
2011/11/10 PHP
PHP的拦截器实例分析
2014/11/03 PHP
PHP中上传多个文件的表单设计例子
2014/11/19 PHP
thinkphp普通查询与表达式查询实例分析
2014/11/24 PHP
php数组函数array_key_exists()小结
2015/12/10 PHP
javascript  Error 对象 错误处理
2008/05/18 Javascript
网站页面自动跳转实现方法PHP、JSP(下)
2010/08/01 Javascript
js传中文参数controller里获取参数乱码问题解决方法
2014/01/03 Javascript
DIV始终居中的js代码
2014/02/17 Javascript
js解决select下拉选不中问题
2014/10/14 Javascript
js 实现获取name 相同的页面元素并循环遍历的方法
2017/02/14 Javascript
js, jQuery实现全选、反选功能
2017/03/08 Javascript
JavaScript数组去重的方法总结【12种方法,号称史上最全】
2019/02/28 Javascript
webpack自动打包和热更新的实现方法
2019/06/24 Javascript
基于node+vue实现简单的WebSocket聊天功能
2020/02/01 Javascript
Jquery如何使用animation动画效果改变背景色的代码
2020/07/20 jQuery
JS+CSS实现动态时钟
2021/02/19 Javascript
分享给Python新手们的几道简单练习题
2017/09/21 Python
PyQt4实现下拉菜单可供选择并打印出来
2018/04/20 Python
Sanic框架蓝图用法实例分析
2018/07/17 Python
自学python的建议和周期预算
2019/01/30 Python
django url到views参数传递的实例
2019/07/19 Python
Python中字典与恒等运算符的用法分析
2019/08/22 Python
python可视化实现KNN算法
2019/10/16 Python
使用css3 属性如何丰富图片样式(圆角 阴影 渐变)
2012/11/22 HTML / CSS
wordpress添加Html5的表单验证required方法小结
2020/08/18 HTML / CSS
澳大利亚旅游网站:Lastminute
2017/08/07 全球购物
报社实习生自荐信
2014/01/24 职场文书
秦兵马俑教学反思
2014/02/07 职场文书
课前三分钟演讲稿
2014/04/24 职场文书
安全口号大全
2014/06/21 职场文书
毕业生面试求职信
2014/06/23 职场文书
技术员个人工作总结
2015/03/03 职场文书
Python数据清洗工具之Numpy的基本操作
2021/04/22 Python
MySQL如何解决幻读问题
2021/08/07 MySQL