是否可以将SYSTEMJS与REQUIREJS结合起来?

时间:2016-05-05 15:49:42

标签: javascript angularjs requirejs systemjs

我想将我的应用程序附加到使用REQUIREJS作为amd加载程序的现有门户应用程序。我会扩展这个应用程序,但我想为我的部分去SYSTEMJS的加载器。似乎不可能在systemjs上下文中使用模块,这些模块已加载requirejs。

我为我的问题准备了一个plunkr示例:

  requirejs(['AlternateCase.js'], function(AlternateCase) {
    console.log(AlternateCase);
    System.import("app.js");
  });

https://plnkr.co/edit/nRnnHzRLyTJCT826WBo4

AlternateCase是一个角度过滤器,我用requirejs加载 - 我使用systemjs加载的应用程序。我得到了过滤器对象(console.log),但我在我的应用程序中获得了“未知提供程序”。

挑战在于 过滤器的代码不得更改 ,因为它代表了我想要加载但我无法更改的exsting应用程序。

1 个答案:

答案 0 :(得分:1)

我已经能够创建一个有效的Plunker。 https://plnkr.co/edit/a3ZMek8aUmBuusoIFBjE?p=preview

我还完成了通过用System.amdRequire覆盖requirejs来替代使用system.js进行AMD加载。

window.requirejs = System.amdRequire;

但是,requirejs + systemjs也很好。