是否可以将 SYSTEMJS 与 REQUIREJS 结合使用?
Is it possible to combine SYSTEMJS with REQUIREJS?
我想将我的应用程序附加到一个现有的门户应用程序,该应用程序使用 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 加载的 angular 过滤器 - 我使用 systemjs 加载的应用程序。我得到了过滤器对象 (console.log),但我在我的过滤器应用程序中得到了 "unknown provider"。
挑战在于不能更改过滤器的代码,因为它代表我要加载的现有应用程序但我无法改变。
我已经能够创建一个有效的 Plunker。
https://plnkr.co/edit/a3ZMek8aUmBuusoIFBjE?p=preview
我还完成了通过用 System.amdRequire.
覆盖 requirejs 来替代地使用 system.js 进行 AMD 加载
window.requirejs = System.amdRequire;
然而,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 加载的 angular 过滤器 - 我使用 systemjs 加载的应用程序。我得到了过滤器对象 (console.log),但我在我的过滤器应用程序中得到了 "unknown provider"。
挑战在于不能更改过滤器的代码,因为它代表我要加载的现有应用程序但我无法改变。
我已经能够创建一个有效的 Plunker。 https://plnkr.co/edit/a3ZMek8aUmBuusoIFBjE?p=preview
我还完成了通过用 System.amdRequire.
覆盖 requirejs 来替代地使用 system.js 进行 AMD 加载window.requirejs = System.amdRequire;
然而,requirejs + systemjs 也结合得很好。