解决$ injector中不可用的对象

奥马尔·梅基(Omar Meky)

我的路线定义如下:

.state('user_login', {
                url: '/user/login',
                templateUrl: 'login.tpl.html',
                controller: 'AuthenticationCtrl',
                resolve: {
                    practice: ['$q', function($q) {
                        return $q.when({});
                    }]
                }
            })

当我将“练习”注入控制器时,事情按预期进行。当我使用$ injector时,服务如下:

$injector.get('practice')

我收到一个未知的提供程序异常。解析对象是否对$ injector不可用?我如何在控制器中公开它们而不显式地将它们注入控制器定义中?

注意:我正在使用Angular 1.2.x

PSL

不,您不能通过单独获取它们$injector而且,甚至无法在其他地方分别注入它们,例如,AuthenticationCtrlng-controller指令实例化的同一控制器(

解析对象不是可以单独注入的任何服务或任何其他实体。AuthenticationCtrl通过路由器绑定控制器时,这是路由器注入的特殊依赖项您无法单独获取实例。只有路由器知道有关决心属性和而路由器实例化控制器(一旦所有的解决依赖得到解决),它会在注释(通过显性/隐性依赖注释中的definision指定的依赖列表的决心性质AuthenticationCtrl)的路由绑定的控制器,并根据需要注入它们。

这种特殊的实现方式可以在其他组件中找到,例如angular-ui-modal,ui-state-router,angular-router的routeprovider等。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何解决“ ...此字体的编码中不可用”?

Visual Studio 2010解决方案中不可用的项目

.getSupportActionBar在Fragment中不可用;解决方法导致旋转时出现NullPointerException

我可以列出Visual Studio解决方案中的所有*不可用*项目吗?

C ++ / C#解决方案中不可用的任何CPU

如何解决“字符”不可用:请在Swift 5中直接使用String

Android,Anko cardView不可用-未解决的参考:cardView

phpmyadmin EXCEPT SELECT不可用[已解决]

IntelliJ“调试信息不可用”-如何解决?

如何解决spring bean不可用的错误?

Google Geocoder服务不可用(坐标要解决)

如何解决tr和cut不可用?

解决方案标签在“自定义”下的“设置”标签中不可用,无法上传示例html文件

.NET 2.0 WebService在Xamarin.Forms默认便携式解决方案中不可用

.cs文件中的对象不可用

如何解决Restful WebService中资源不可用的问题

运行“ lein deploy clojars”时,如何解决“ gpg:解密失败:密钥不可用”?

如何解决Joomla错误“此显示的模板不可用。”

如何解决远程数据库上的Firebird“不可用数据库”错误?

IQKeyboardManagerSwift的“共享”不可用:在适当的地方使用基于视图控制器的解决方案

我该如何解决“软件包'ddply'不可用(对于R版本3.6.2)”

无法解决“错误:Git服务器扩展不可用。” (Google笔记本)

如何解决Composer的“稳定版本不可用的软件包”错误?

在Flask应用程序中针对第二个请求修复“ MySQL连接不可用”的解决方案吗?

如何在多线程gtkmm应用程序中解决“ X服务器上的致命IO错误11(资源暂时不可用)”?

如何解决此错误“ x1的值在常量表达式中不可用”?static_assert

错误:[$ injector:nomod]模块不可用

JavaScript中的屏幕对象在QWebEnginePage中不可用

如何解决“找到了Netty的原生的epoll在classpath运输,但epoll的不可用。使用NIO而不是”警告?