有可能将SYSTEMJS与REQUIREJS结合起来吗

Is it possible to combine SYSTEMJS with REQUIREJS?

本文关键字:结合 起来 REQUIREJS SYSTEMJS 有可能      更新时间:2023-09-26

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

我为我的问题准备了一个很好的例子:

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

https://plnkr.co/edit/nRnnHzRLyTJCT826WBo4

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

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

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

我还通过用system.amdRequire.覆盖requirejs,实现了对AMD加载使用system.js

window.requirejs = System.amdRequire;

然而,requirejs+systemjs的组合也很好。