webpack多入口多出口的实现-阿里云开发者社区

开发者社区> 开发与运维> 正文

webpack多入口多出口的实现

简介: webpack是一个优秀的打包平台, 可以把sass, 图片, 字体等静态资源全部打包到js中 作者最近在改造一个传统的静态网站, 为了减少http请求, 其中一个策略就是,把单个静态网页对应的多个静态资源(如字体, css, 图片, js), 打包...
  • 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内,按照格式添加即可(对着抄就行)

小结:

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

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章