最近用 RequireJS 封装了一些接口类的 JS(AMD 规范), 网上搜索一大堆, 发现都不是自己想要的, 又或是打包后未提及如何调用的. 针对于这个问题, 笔者各种百度, 尝试, 发现 RequireJS 自带的 r.JS 对多个 JS 合并压缩很好使, 以下是笔者的亲测结果, 把我的实际经验分享给大家, 如果有更好的压缩插件还望大家多多指教!
1. 下载 r.JS 文件
下载地址: r.JS 下载
放在与 require.JS 同级目录下
我的项目目录
2. 需要安装 node 环境
3. 我需要将如下 JS 合并为一个 JS,(注: AMD 规范的 JS, 如果不是 amd 规范的, 需要在 require.config 中配置, 才能在 amd 规范的 JS 中引入, 如果对 require 不太熟的可以先去了解下, 本文不作解释) 如下:
需要合并的 JS
进入 cmd 命令窗口:
进入项目目录下, 输入如下命令: node JS/r.JS -o baseUrl=JS/lib/Cesium name=DX out=build.JS optimize=none
设置 optimize=none, 合并后可以对代码进行调试
cmd
输出结果
至此合并完成, build.JS 就是合并后的文件.
4. 如何调用问题, 在 html 中引入或是 require 加载 build 文件后如何获取其中的对象, 比如我要获取 DX 对象, 这个对象中包含其他 JS 的对象.
在合并的 build.JS 中, 最后加入如下代码:
加入的代码
给个回调, HTML 中就可以拿到 DX 对象, 有了它就可以操作任何你想要的.
HTML 页面:
来源: http://www.jianshu.com/p/21d5653a3767