0
鉴于以下情况,$injector.get
将失败,因为$rootScope
不可用。如何知道何时可以提供角度依赖关系
app.factory('$exceptionHandler', ['$injector', $injector => {
const $rootScope = $injector.get('$rootScope')
return (exception, cause) => {
// code
}
})
在研究中,我一直遇到这个问题,它在运行时解析(当调用内部函数时)。
app.factory('$exceptionHandler', ['$injector', $injector => {
return (exception, cause) => {
const $rootScope = $injector.get('$rootScope')
// code
}
})
我想什么是不知何故知道我什么时候能够解决的依赖。例如:
app.factory('$exceptionHandler', ['$injector', $injector => {
$injector.illLetYouKnowWhenWeCanDoStuff().then(() => {
const $rootScope = $injector.get('$rootScope')
})
return (exception, cause) => {
// code
}
})
这可能吗?
相关=> $location from $exceptionHandler - dependency conflict
为什么注射注射器,而不是只注射$ rootScope?注入器会找出依赖关系,从而创建$ rootScope并在创建exceptionHandler之前注入它。另外请注意,'$'前缀恰好可以区分角度服务和您自己的服务。所以你不应该用'$'来加前缀。 –
@JBNizet阅读我在底部链接的问答,以及您指的是我的服务?本地$ rootScope? – aw04
@JBNizet $注射器是第二个例子需要的工作(以及我目前的解决方法),但它可能在第一个例子中是不相关的(同样的错误,无论哪种方式) – aw04