0
的API爲表示決心:
key – {string}: a name of a dependency to be injected into the controller.
@egghead,有這個視頻的題目
什麼,我不知道是什麼,關鍵對象是爲和爲什麼上述視頻的作者確實將控制器注入自身
的API爲表示決心:
key – {string}: a name of a dependency to be injected into the controller.
@egghead,有這個視頻的題目
什麼,我不知道是什麼,關鍵對象是爲和爲什麼上述視頻的作者確實將控制器注入自身
key – {string}: a name of a dependency to be injected into the controller.
app.config(function($routeProvider) {
$routeProvider.
when('/', {
controller: 'ListCtrl',
resolve: {
myResolve: function(MyService) {
return MyService();
}
},
templateUrl:'./views/list.html'
})
});
代替(控制器)
app.controller('MyController',function($scope,MyService){
$scope.data = MyService();
});
,如果你使用的決心
app.controller('MyController',function($scope,myResolve){
$scope.data = myResolve;
});
UPDATE
工作的例子
<!doctype html>
<html ng-app="myModule">
<head>
<meta charset="utf-8">
</head>
<body>
<div id="content" data-ng-view=""></div>
<script src="http://code.angularjs.org/1.0.8/angular.min.js"></script>
<script>
var myModule = angular.module('myModule', []);
myModule.config(function ($routeProvider) {
$routeProvider
.when('/', {
templateUrl: './index.html',
controller: 'IndexCtrl',
resolve: {
hello: function(Hello) {
return Hello.getMessages();
}
}
})
.otherwise({
redirectTo: '/'
});
});
myModule.factory('Hello', function($q, $timeout) {
var getMessages = function() {
var deferred = $q.defer();
$timeout(function() {
deferred.resolve('Hello');
}, 1000);
return deferred.promise;
};
return {
getMessages: getMessages
};
});
myModule.controller('IndexCtrl',function($scope,hello){
$scope.hello = hello;
});
</script>
</body>
</html>
認爲
<p>{{hello}}</p>
對不起,但如果我這樣做,我得到'錯誤:未知提供商:myResolveProvider < - myResolve' – user2422960
後更多的代碼,請(服務應該返回在任何情況下諾言)和整體你應該有服務:) – Whisher
在我的回覆我發佈了一個工作的例子 – Whisher