目录后台离线资源生成工具前端协助为了让用户跳转到H5,跳转到用户原汁原味的体验,需要将H5相关的离线资源包发送给客户端,客户端可以使用离线资源代替实际的网络请求,节省用户等待时间和流量消耗。为了满足上述需求,需要创建打包脚本和工具来满足正常的运维。离线资源生成工具为了生成离线资源,我们提供了一个工具,可以打包增量包和全量升级包。原理是根据gitdiff比较两次提交,然后只关注offlineResource中两次提交文件的不同(与dist目录同级,发布包需要拷贝内容dist目录到offlineResource)目录下,创建增量包。完整包是整个offlineResource目录。offlineh5安装方式:npminstall-gofflineh5使用方式:offlineh5-opackage-rhttp://github.com/xxx.git-fe24b8f0bb9a85c93c6965a906c1ea0448342821a-ugitusername-pgitpassword-z活动参数说明:-o资源包输出路径-r仓库地址-ugit用户名-pgit用户密码-f从哪个commit导出增量包-z类型化资源包前缀类型化的离线资源包需要存放在七牛cdn:http://oq78hrbgk.bkl。clouddn.com/upgrade/activity/activity.full_0.1.1.zip前端协助遇到的问题之前前端打包只导出html,js,css到offlineResource目录下,没有图片,因为图片都放在了cdn上,本地没有原图,导致三个问题:node脚本打出来的离线资源包没有图片。即使找到原图,也不能保证原图的本地路径与CDN上的路径一致。线上现有的CDN一级路径比较混乱。现有路径在线。http://cdn.leoao.com/le-activ...http://cdn.leoao.com/activity...http://cdn.leoao.com/activity...前端调整获取使用qtool脚本将CDN上的所有图片都存储在本地作为原图,按照模块规范了原图的路径。比如le-activity和activity需要统一成activity。前端打包不仅输出html、js、css,每次打包还需要将原图复制到dist目录下。同时,发布过程需要将dist目录下的内容复制到offlineResource目录下。根据offlineResource目录,使用qtool脚本将该目录下的所有资源路径作为cdnkey,然后将所有资源上传到cdn。以后前端开发打包前,可以使用本地路径作为相对路径提前配置路径,不用考虑cdn的上传路径。调整后offlineh5打包脚本可以根据offlineResource目录下commit的不同来diff出两个版本的差异,从而打印出增量包和全量包。使用qtoolqtool安装方法:npminstall-gqtool上传资源:qtoolupload-fuploadfolder-aRSxpQIxNIS2vo0vuQR3HX701ddS9fdlUnQ5jV8ul-sxCLWczC5V5kyy7H85MNKNYcXT4wx9k5OzT7YDVFk-bmybucket-kactivity-holf3t4olk.bkt.clouddn.com下载资源:qtooldownload-fdownloadfolder-aRSxpQIxNIS2vo0vuQR3HX701ddS9fdlUnQ5jV8ul-sxCLWczC5V5kyy7H85MNKNYcXT4wx9k5OzT7YDVFk-bmybucket-kactivity-holf3t4olk.bkt.clouddn.com参数说明:-f,--folder
