我在$ resource.query()方法中遇到了一些問題。我試圖訪問它中的第一個元素,但它不適合我。選擇控制器返回集合沒有問題。
controller.js
angular.module('bookshelf').controller('bsMainCtrl', function($scope, bsBooks){
var data = bsBooks.query();
$scope.singleBook = data[0];
});
angular.module('bookshelf').controller('bsSelectionCtrl', function($scope, bsBooks){
var booksData = bsBooks.query();
$scope.books = booksData;
});
main.jade
.singleBook
.selection
include selection
.content
include book-list
書list.jade
div(ng-controller='bsMainCtrl')
p Title: {{ singleBook.title }}
p Author: {{ singleBook.author }}
p ISBN: {{ singleBook.ISBN }}
p Created at: {{ singleBook.createdAt | date }}
a(ng-href='/edit/{{ singleBook._id }}') Edit
個
selection.jade
div(ng-controller="bsSelectionCtrl")
div(ng-repeat='book in books')
button(ng-click='selectBook()') {{ book.title }}
service.js
angular.module('bookshelf').factory('bsBooks', function($resource) {
var BookshelfResource = $resource('/api/books/:_id', {_id: "@id" }, {
update: {method: 'PUT', isArray: false}
});
return BookshelfResource;
});
route.js
exports.getBooks = function(req, res){
Book.find({}).exec(function(err, collection){
res.send(collection);
});
};
難道角$ S應付有關?我曾嘗試使用Angular檢查器,但只能得出結論,singleBook是空的。
VAR數據= bsBook.query(函數() {var first = data [0];})//等待服務器然後分配val。 – diproart