微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

angularjs – 具有依赖关系的registerModule

我正在用MEAN.JS构建一个应用程序,我正在尝试使用另一个模块的控制器.我发现我可以通过依赖注入来做到这一点:
angular.module(‘MyModule’,[‘Dependency’]);

但是在MEAN.JS中创建模块的方式是:

ApplicationConfiguration.registerModule('MyModule');

我不能只将第二个参数传递给registerModule.那么,我该怎么做呢?我必须使用这两种方法吗?我做错了吗?

我想添加一个新模型:Campaign.广告系列仅由管理员创建,但可以由“广告系列所有者”(另一位用户)查看.创建活动表单应列出可用的用户,以便管理员可以选择将成为该活动的“所有者”的用户.
问题是,创建活动表单由CampaignsController控制,我该如何列出用户?我已经使用了另一个控制器(UsersController),这就是问题,因为我们在Campaign模块中,所以它是未定义的.

编辑:

问题是grunt自动启动应用程序错误
我将控制器从一个模块(文件夹)移动到另一个模块(文件夹),但是grunt仍在尝试从旧路径加载它,因此失败:未找到控制器.我认为问题是依赖注入,但你只需要关闭grunt(Ctrl C)并再次运行它.问题解决了.
无论如何,感谢@gilBirman的答案,因为它是正确的:没有必要向MEAnjs注入任何东西.

MEAN.js将通过registerModule注册的所有模块可用于应用程序中的所有其他模块,方法是将其作为依赖项添加到名为mean的主应用程序中.以下是执行此操作的MEAN.js源代码的一部分:
var applicationModuleName = 'mean';
....
// Add a new vertical module
var registerModule = function(moduleName) {
    // Create angular module
    angular.module(moduleName,[]);

    // Add the module to the AngularJS configuration file
    angular.module(applicationModuleName).requires.push(moduleName);
};

所以你在正确的轨道上,但听起来你正试图注入一个控制器.但是,在角度控制器中,控制器不可注射.您可以注入服务,工厂,值和常量.

原文地址:https://www.jb51.cc/angularjs/141047.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐