我有一个使用Typescript的angular1.5应用程序。我正在尝试使用ui路由器状态。在解析路由之前加载用户令牌。
我收到错误:
未捕获错误:[$ injector:modulerr]无法实例化模块应用 由于:错误:[$ injector:unpr]未知提供者:$ state
这是路线
export class Route {
static $inject = [ '$state', '$stateProvider' ];
constructor(public $state:ng.ui.IStateService, private $stateProvider: ng.ui.IStateProvider ) {
this.init();
}
private init(): void {
this.$stateProvider.state('client', Route.clientId());
}
private static clientId(): ng.ui.IState {
return {
name:'client',
url: '/{clientId:int}',
component:'navComponent',
resolve:{
authToken:($state)=>{
console.log('should be done here');
// console.log('$state before log', $state.params);
return 'valid token from server';
}
}
}
}
}
angular.module('app')
.config(($state: ng.ui.IStateService, $stateProvider: ng.ui.IStateProvider) => {
return new Route($state, $stateProvider)
});
我正确设置了ui-router。当路由工作时,我没有在该州的决心。
请注意我使用的是打字稿,而且我有严格的依赖关系。
你知道为什么$ state在这里不为人知吗?