controllers.js と factory.js を使用した AngularJS アプリケーションがあります。
私が好きなのは、コントローラーの値 (工場から取得したもの) で何かをすることです。私の問題は、アクセス時にこれらの値が空であることです。
応答を待つにはどうすればよいですか? または、どこにコールバックを追加できますか?
Flashcards.controller('CardDeckDetailController', function($scope, $routeParams, CardDeckService, CardService) {
$scope.carddeck = CardDeckService.findCardDeckByID($routeParams.cardDeckID);
$scope.cards = CardService.findCardsByCardDeckID($routeParams.cardDeckID);
$scope.card = $scope.cards[0];
$scope.cardLength = $scope.cards.length;
});
Flashcards.factory('CardDeckService', function($resource) {
var cardDeckService = $resource('/FlashcardsServer/rest/carddecks/:cardDeckID', {}, {});
cardDeckService.findAllCardDecks = function() {
return cardDeckService.query();
};
cardDeckService.findCardDeckByID = function(id) {
return cardDeckService.get({ cardDeckID : id });
};
return cardDeckService;
});
私が気に入っているのは、最初の車 ($scope.cards[0]) を取得し、$scope.card の下に保存することです。ただし、常に空です (cardLength と同じ)。
一方、(cards.length) を使用して部分ビューからサイズを出力すると、正しい値が得られます。
挨拶と感謝マーク