依赖包拼合方法

如需要拼合以下两个依赖包:

1. lib.login 版本0.2.9

2. lib.mtop 版本0.5.9

可以用以下方法对两个依赖包进行拼合:

一、Grunt

Grunt中有package.json文件,该文件中会有依赖内容

{  ……

  "dependencies" : {

    "lib.login" : "0.2.9" ,

    "lib.mtop" : "0.5.9"

  }

  ……

}

并假设同时有以下目录:

--src 源代码

--build 要发布的打包代码

Grunt在执行时,会默认将package.json中的依赖文件与src中的源代码压缩打包成一个js文件dest.js,并将该文件放入build目录中用于发布。

这种方法的缺点在于,如果最终生成打包代码中,有20k的依赖文件和2k的业务代码,那么任何2k业务代码的改变,都会导致整个dest.js包的版本改变,从而导致用户需要下载整个22k的dest.js,而事实上我们只需要更新2k的业务代码而已,其他的20k依赖文件应该从缓存读取。

二、设置src为自动拼合页内容

将依赖包通过如下地址拼合成一个js文件:

http://g.tbcdn.cn/??mtb/lib-login/0.2.9/login.js,mtb/lib-mtop/0.5.9/mtop.js

这样仅需在第一次使用时对依赖文件进行src引用请求,即使业务代码有改变, 也只需重新下载业务代码,依赖文件仍从本地缓存获取。

三、pack.js(待查找)

配置XML资源文件,手动选择需要合并哪些文件。

以上方法(一、二)在依赖文件有所改变时,都需要浏览器对全部代码进行重新下载。

原文地址:https://www.cnblogs.com/zldream1106/p/3570809.html