【发布时间】:2014-10-08 03:50:16
【问题描述】:
我有一项服务可以提供
services.factory('proService', ['$resource', function ($resource) {
return {
getValue: function (context_params) {
var Pro = $resource('pro');
return Pro.get({user_id: context_params.userId, course_id: context_params.cKey, activity_id: context_params.activityId});
}
};
}]);
我的控制器代码。但我只是把它当作一个承诺。我需要写一个回调来获取熟练度值。
$scope.getPro = function () {
$scope.pro = proService.getValue({userId: $scope.userId, courseKey: $scope.courseKey, activityId: $scope.activityId});
$scope.pro.rating = 5 * Math.round(($scope.pro.pro * 10)/5);
console.log($scope.pro);
};
$scope.pro 给我
f {$promise: Object, $resolved: false, $get: function, $save: function, $query: function…}
$promise: Object
>catch:function(callback){
>finally:function(callback){
>then:function(callback,errback,progressback){
>_proto_:object
$resolved: true
proficiency: 2
>profs:object
>_proto_:Resource
我无法调用 pro 的值为“2”。这是我在控制器中尝试过的
$scope.getPro = function () {
$scope.pro = proService.getValue($scope.userId, $scope.snapshotId).then(function(data) {
$scope.rating = data.pro;
console.log($scope.rating);
});
};
请帮助我解决我在这里做错的事情。谢谢
【问题讨论】: