发布于 2017-02-20 07:25:24 | 182 次阅读 | 评论: 0 | 来源: 网友投递
SeaJS JavaScript模块加载框架
SeaJS是一个遵循CommonJS规范的JavaScript模块加载框架,可以实现JavaScript的模块化开发及加载机制。与jQuery等JavaScript框架不同,SeaJS不会扩展封装语言特性,而只是实现JavaScript的模块化及按模块加载。SeaJS的主要目的是令JavaScript开发模块化并可以轻松愉悦进行加载,将前端工程师从繁重的JavaScript文件及对象依赖处理中解放出来,可以专注于代码本身的逻辑。
jquery1.7以上的都支持模块化加载,只是jquery默认的是支持amd,不支持cmd。所以要用seajs加载jquery时,我们需要稍微做下改动,需要把以下内容做下修改,具体修改方式如下:
把
if (typeof define === "function" && (define.amd)) {
define( "jquery", [], function() {
return jQuery;
});
}
改成
if (typeof define === "function" && (define.amd || define.cmd)) {
define( "jquery", [], function() {
return jQuery;
});
}
或
if (typeof define === "function") {
define( "jquery", [], function() {
return jQuery;
});
}
通过以上代码的修改就可以成功解决seajs加载jquery时提示$ is not a function问题,希望对大家有所帮助。