У меня есть завод, в котором у меня есть post и комментарии свойства, значения которых являются значениями моего ресурса. Но когда я пытаюсь позвонить getComment() функция все еще возвращает [];Значение настройки Angularjs в Factory из ресурса
мой завод angular.module ('flapperNews'). Завод ('PostService', [ '$ ресурсные', функция ($) {ресурс
var service = {};
var postId = 0;
var post = {};
var comments = [];
service.resource = function() {
return $resource('api/posts/:id.json', {id: "@id"},
{
'create': { method: 'POST' },
'index': { method: 'GET', isArray: true },
'show': { method: 'GET', isArray: false },
'update': { method: 'PUT' },
'destroy': { method: 'DELETE' }
}
);
};
service.setPost = function(postId) {
this.resource().show({id: postId}, function(post) {
post = post;
comments = post.comments;
});
};
service.getComments = function() {
return comments;
};
service.setPostId = function(newPostId) {
this.postId = newPostId;
};
return service;
}]);
использование в мой контроллер
....
function ($scope, Post, Comment, $stateParams, formlyValidationMessages, Page, Auth, loginForm, postService) {
postService.setPost($stateParams.id);
console.log(postService.getComments());
....
Показать код, который использует ГЭТ комментарии, это должно быть сделано только после того, как обещание решить –
это показано ниже «использования в моем контроллере» –
вы отладить вызов setPost? есть ли какое-либо значение в почтовых рассылках? вы ждете с «getComments» до тех пор, пока обещание не будет разрешено? –