Angular js:->访问解析属性时,angular引发未知提供程序错误
Angular js :-> angular throws unknown provider error while accessing resolve proprerty
当我从视图中删除ng控制器时,resolve属性工作得很好,但当我将ng控制器放在模板中时,它会抛出未知的provider。有人能帮我解释为什么会发生这种情况吗??
app.config(['$routeProvider',function($routeProvider) {
$routeProvider.
when('/', {
templateUrl: 'page/login.html',
controller: 'loginController',
resolve: {
message: function(demoService){
return demoService.getResolveContent();
},
greeting: function(demoFactory){
return demoFactory.getGreeting();
}
}
}).
when('/profile', {
templateUrl: 'page/profile.html',
controller: 'profileController'
})
.otherwise({
redirectTo: '/'
});
}]);
函数loginController($scope,$location,message,greeting){
$scope.tempfactory = greeting; }
<div style="color: white;width: 100%;height: 100%;background-color: lightgray" ng-controller="loginController">
<p>{{tempfactory}}</p>
<input type="text" ng-model="inputBoxValue">
<button style="width: 100px;height: 100px" ng-click="profilePage()"></button>
</div>
如果我用这个替换上面的html:
<div style="color: white;width: 100%;height: 100%;background-color: lightgray" >
<p>{{tempfactory}}</p>
<input type="text" ng-model="inputBoxValue">
<button style="width: 100px;height: 100px" ng-click="profilePage()"></button>
</div>
它运行得很好。任何人都能告诉我这是什么原因吗。
使用resolve
添加的依赖项是作为正在解析的路由和正在创建的控制器的一部分注入的,否则不可用。这些不是像service
或filter
那样的全局依赖关系。
如果使用ng-controller
,则不会发生路由转换,也不会进行与路由相关的依赖项解析和控制器创建,并且会引发DI错误。
如果将控制器放入路由定义中并使用ng-controller
,则会创建两个控制器实例,但其中一个会出现DI错误。
相关文章:
- Angular 1.5组件中的Angular Bootstrap Modal$uibModalInstance未知提供程
- Angular小部件中的Angular Grid返回错误:[$injector:unp]未知提供程序:
- angular.js:13294错误:[$injector:unp]未知提供程序:cityResourceProvide
- 未知提供程序:在angular.bootstrap之前使用$injector获取$location服务时使用$rootE
- Angular 未知提供程序,出厂时包装在匿名函数中
- Angular uibModal,Resolve,未知提供者
- AngularJS + RequireJS -- 未知提供程序,Angular bug
- 正在注入Angular模块:未知提供程序
- 由于未知原因,Angular按钮正在调用表单提交按钮
- Angular js:->访问解析属性时,angular引发未知提供程序错误
- AngularJs使用angular.bootstrap()时出现未知提供程序错误
- Angular-提供程序中的未知提供程序
- 未知提供程序:3提供程序<-3使用Angular Bootstrap uibModal
- 如何解决angular[$injector:unp]未知的提供程序错误
- Angular-添加无限滚动模块后的未知提供程序
- 未知提供程序尝试在Angular控制器上注入依赖项时出错
- Angular未知提供商错误
- 在angularJS中使用angular-cached-resource的未知提供商
- 生成了Angular未知标签
- Jasmine/Angular:未知提供程序:$localStorageProvider<-localStorage