我有一个控制器和服务大致如下:
.controller('BooksCtrl', function($scope, bookService) {
bookService.getBooks().then(function(response) {
$scope.books = response.data;
});
})
.factory('bookService', function($http) {
return {
getBooks: function() {
return $http.get('http://books.com/books').success(function(response) {
return response;
});
}
}
})
每当我转到与BooksCtrl
对应的路线时,我的屏幕上的图书清单就会变为空白(GET
来电正在运行时),然后重新绘制新数据。< / p>
什么是避免页面刷新的好方法,在GET
调用运行时保留现有数据,然后只更新屏幕?
我在考虑将所有图书保存在bookService
的属性中,将其分配给控制器中的$scope.books
,然后仅在GET
调用完成后更新该属性(I&# 39; d在控制器中调用bookService.updateBooks()
之类的东西。这是合理的还是更容易/更好的方式?