gpt4 book ai didi

angularjs - Angular 动态注入(inject)模块依赖

转载 作者:行者123 更新时间:2023-12-02 22:23:59 26 4
gpt4 key购买 nike

我为 Umbraco 开发了一个使用 Angular 的评论插件。因此,该网站的主要 Angular 应用程序必须注入(inject)评论系统模块才能正常工作。

例如

var theirSite = angular.module('someApp', []);

注入(inject)

var theirSite = angular.module('someApp', ['theCommentSystemModule'];

在我的评论系统中,

   angular.module('theCommentSystemModule']....;

有什么方法可以让我的模块自动检测 Angular 应用程序并注入(inject)自身,而无需更新站点代码?我希望它只使用脚本链接即可工作。

例如:假设这些是脚本

<script src="...angular.js">
<script src="...services.js">
<script src="...directives.js">
<script src="...commentsPlugin.js">
<script src="...theirApp.Js">

所以我基本上需要的是在应用程序引导时从 Angular 进行某种回调,这样我就可以将评论系统模块作为依赖模块注入(inject)到应用程序中,以便它将在引导层中初始化。

或者,也许我自己在插件中引导页面?是否可以同时运行两个应用程序,例如如果我引导并且他们的应用程序也引导。

最佳答案

可以通过使用未记录的 requires 来完成模块属性。这边new dependencies can be added在定义模块之后但在引导之前添加到模块。

由于“ng”是唯一已知且定义的模块 ATM(它也已经定义了 requires 数组),因此篡改它:

angular.module('ng').requires.push('theCommentSystemModule');

不过让用户自己加载模块更合适。

关于angularjs - Angular 动态注入(inject)模块依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32649210/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com