Module 使用Angular JS时如何加载AMD模块?

Module 使用Angular JS时如何加载AMD模块?,module,angularjs,amd,commonjs,Module,Angularjs,Amd,Commonjs,出于某种奇怪的原因 我有许多AMD格式的现有模块。我想在一个角度应用程序中使用它们 我想避免重写任何AMD模块。如果可能,我也希望避免使用Angular自己的模块系统 使用Angular时是否可以使用AMD模块?有可能避免Angular的自定义模块系统吗?您确实需要以“角度方式”(例如Angular.module('yourApp').directive('someDirective'),…)定义角度组件,但您当然可以使用AMD包装角度组件和将非角度组件拉入角度组件。退房 不能用AMD定义替换A

出于某种奇怪的原因

我有许多AMD格式的现有模块。我想在一个角度应用程序中使用它们

我想避免重写任何AMD模块。如果可能,我也希望避免使用Angular自己的模块系统


使用Angular时是否可以使用AMD模块?有可能避免Angular的自定义模块系统吗?

您确实需要以“角度方式”(例如Angular.module('yourApp').directive('someDirective'),…)定义角度组件,但您当然可以使用AMD包装角度组件和将非角度组件拉入角度组件。退房

不能用AMD定义替换Angular的模块定义。现在你必须用AMD定义来包装你的角度代码

另一件需要注意的事情是,目前还没有真正的方法来“延迟加载”模块。最终,您将不得不在主角度模块定义中要求应用程序中使用的所有角度模块,因此使用AMD的好处目前是有限的


开发团队表示,他们将在将来某个时候支持延迟加载,这是现在将您的文件打包到AMD中的唯一原因。

谢谢。我的团队还使用AMD作为各种应用程序的标准,因此能够加载这些模块而不必将它们转换为另一种不太常见的格式是很重要的。现在对于angular开发者来说,什么是最佳实践?我不知道“避免”是否是正确的想法。我想你只是在问如何使用你的AMD模块。使用旧AMD模块的最佳方式是什么,这才是真正的问题。我不确定答案。我是以一种稍微不同的方式来回答这个问题的。但我并不建议你避免Angular的模式。但我很好奇,在其他项目中使用AMD模块的最佳方法是什么,等等。其他答案很有趣,但我觉得他们并没有真正公正地回答这个问题。