草庐IT

javascript - AngularJS RequireJS Browserify 和 Javascript 模块/全局范围的噩梦

coder 2024-07-26 原文

<分区>

我最近在所有 CommonJS 与 AMD 的战斗中进行了一些挖掘,这是我的发现...... (顺便说一句,我不是在这里说教,而是分享我的想法以获得一些建设性的见解......) RequireJS 给我的 Angular 模块带来了很多复杂性,我觉得这是错误的,因为它是模块中的模块包装...... Browserify 方式更简洁,但要使其正确处理所有事情,您需要正确实现所有依赖项和依赖项依赖项,不幸的是,我们并不生活在一个完美的世界中……所以您必须调整和调整shimmed Libs 的内部依赖性......我不是额外复杂性的忠实粉丝......

我目前采用的方式(并接受您所有建设性的批评...)

我有一个 grunt 文件连接并缩小了我所有的资源,像 BreezeJS、$、Q、Ladda 等库...在全局范围内泄漏... 然后我为这些全局变量声明这个类型模块:

module.value('gLadda', (function(){

    if("Ladda" in window && "Spinner" in window){
        return Ladda;
    }else{
        throw new Error("The Globals Ladda || Spinner are missing");
    }

})());

在我的应用程序中使用“Angularify”依赖项后,我还没有在团队中使用过这种技术,我想知道这是否会为某些人亮起一些红灯,他们是否会解释原因......谢谢你的时间。

有关javascript - AngularJS RequireJS Browserify 和 Javascript 模块/全局范围的噩梦的更多相关文章

随机推荐