1

我正在使用 Yepnope 加载外部 javascript。在这种情况下,基于 angularjs 的应用程序的指令和控制器。我面临的问题是回调函数不会一直触发,而完整的函数通常会触发一次,很少会触发两次以上。

我想我可以通过计算回调的数量并在使用调用最后一个回调函数时调用我的回调函数来解决这个问题,_.after([no of scripts], myFn)但这似乎也不是一直都有效。

此外,我必须在某些呼叫工作之前使用 setTimeout。

最后,如果加载了库,回调似乎不会触发。

我正在寻找的是一个函数,每当我调用时都会调用它,yepnope而不管发生什么。我认为该complete功能是为此而设计的,但我似乎错了。

有没有这样的功能?

如果不是,我该如何获得这种行为?

例如

yepnope({ test: window.v1,  complete: function(){...}, callback:...});
ypenope({ test: window.v2,  complete: function(){...}, callback:...});
yepnope([ {test: window.v1, complete: function(){...}, callback:...} ]);

在上述情况下,我如何完成 3 次射击?

4

1 回答 1

0

通过在 yepnope 周围创建一个小包装器解决了这个问题。我正在通过该包装器调用 yepnope,因此我能够跟踪每个调用并在需要时触发完整的函数。

于 2012-09-29T01:21:02.387 回答