js库,如何支持AMD

对于一般环境,我们直接将模块函数运行后端的返回值赋值给一个window下的变量就可以了。

对于AMD环境下,刚才我们说过要用define来定义函数。所以对于这两种情况我们可以这样处理:

 ;(function (factory){
 2     if ( typeof define === "function" && define.amd ) {
 3 
 4         // AMD. Register as an anonymous module.
 5         define(factory);
 6     } else {
 7 
 8         // Browser globals
 9         // 以我的库为例  返回mTools
10         window.mTools = factory();
11     }
12 })(function(){
13     我们的js库
14     return {
15        //模块返回值
16     }        
17 
18 });
posted @ 2018-06-23 15:13  zyy_123  阅读(273)  评论(0编辑  收藏  举报