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 相关文章推荐
类之Prototype.js学习
Jun 13 Javascript
用javascript实现兼容IE7的类库 IE7_0_9.zip提供下载
Aug 08 Javascript
javascript制作的网页侧边弹出框思路及实现代码
May 21 Javascript
理解AngularJs指令
Dec 10 Javascript
JavaScript编写带旋转+线条干扰的验证码脚本实例
May 30 Javascript
jquery获取easyui日期控件的值实现方法
Nov 09 Javascript
bootstrap配合Masonry插件实现瀑布式布局
Jan 18 Javascript
Angular 2 利用Router事件和Title实现动态页面标题的方法
Aug 23 Javascript
js 公式编辑器 - 自定义匹配规则 - 带提示下拉框 - 动态获取光标像素坐标
Jan 04 Javascript
vue项目tween方法实现返回顶部的示例代码
Mar 02 Javascript
vue.draggable实现表格拖拽排序效果
Dec 01 Javascript
基于vue hash模式微信分享#号的解决
Sep 07 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 for 循环语句使用方法详细说明
2010/05/09 PHP
Thinkphp模板中截取字符串函数简介
2014/06/17 PHP
php将远程图片保存到本地服务器的实现代码
2015/08/03 PHP
PHP去掉json字符串中的反斜杠\及去掉双引号前的反斜杠
2015/09/30 PHP
PHP实现向关联数组指定的Key之前插入元素的方法
2017/06/06 PHP
PHP封装的简单连接MongoDB类示例
2019/02/13 PHP
JS 仿腾讯发表微博的效果代码
2013/12/25 Javascript
javascript常用代码段搜集
2014/12/04 Javascript
基于jquery实现二级联动效果
2017/03/30 jQuery
深入理解node.js之path模块
2017/05/03 Javascript
Node.js环境下Koa2添加travis ci持续集成工具的方法
2017/06/19 Javascript
vue2.0页面前进刷新回退不刷新的实现方法
2018/07/31 Javascript
vue+vue-router转场动画的实例代码
2018/09/01 Javascript
vue+elementUi图片上传组件使用详解
2019/08/20 Javascript
原生js+css实现tab切换功能
2020/09/17 Javascript
JavaScript实现复选框全选和取消全选
2020/11/20 Javascript
JS实现百度搜索框
2021/02/25 Javascript
TensorFlow深度学习之卷积神经网络CNN
2018/03/09 Python
python调用百度语音REST API
2018/08/30 Python
python导入不同目录下的自定义模块过程解析
2019/11/18 Python
Python实现密钥密码(加解密)实例详解
2020/04/26 Python
CSS3动画之流彩文字效果+图片模糊效果+边框伸展效果实现代码合集
2017/08/18 HTML / CSS
css3新增颜色表示方式分享
2014/04/15 HTML / CSS
美国设计师精美珠宝购物网:Netaya
2016/08/28 全球购物
Under Armour澳大利亚官网:美国知名的高端功能性运动品牌
2018/02/22 全球购物
播音主持女孩的自我评价分享
2013/11/20 职场文书
创业者迈进成功第一步:如何写创业计划书?
2014/03/22 职场文书
校庆活动方案
2014/03/31 职场文书
教育合作协议范本
2014/10/17 职场文书
先进班集体申报材料
2014/12/26 职场文书
2015年社区综治宣传月活动总结
2015/03/25 职场文书
导游带团欢迎词
2015/09/30 职场文书
中国梦党课学习心得体会
2016/01/05 职场文书
Python中文纠错的简单实现
2021/07/07 Python
【海涛DOTA】D-cup邀请赛NV.cn vs DT.Love
2022/04/01 DOTA
深入理解 Golang 的字符串
2022/05/04 Golang