在 AngularJS 中,突然變更路由有時會在新頁面載入時導致閃爍。為了解決這個問題,我們可以延遲顯示新路線,直到檢索到所有必要的資料之後。
問題:如何將AngularJS 配置為等到模型和資料完全載入後再顯示一個新的路由,類似於Gmail的方式
解決方案:類似於Gmail的方式
解決方案:類似於Gmail的方式
解決方案:類似於Gmail的方式function PhoneListCtrl($scope, phones) { $scope.phones = phones; $scope.orderProp = 'age'; } PhoneListCtrl.resolve = { phones: function(Phone, $q) { var deferred = $q.defer(); Phone.query(function(successData) { deferred.resolve(successData); }, function(errorData) { deferred.reject(); }); return deferred.promise; } };
angular.module('phonecat').config(['$routeProvider', function($routeProvider) { $routeProvider. when('/phones', { templateUrl: 'partials/phone-list.html', controller: PhoneListCtrl, resolve: PhoneListCtrl.resolve }); }]);
以上是AngularJS 如何透過延遲直到資料載入來防止路由更改閃爍?的詳細內容。更多資訊請關注PHP中文網其他相關文章!