亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

Angularjs處理頁面閃爍的解決方法

2019-11-19 17:13:40
字體:
來源:轉載
供稿:網友

摘要

在使用{{}}綁定數據的時候,頁面加載會出現滿屏盡是{{xxx}}的情況。數據還沒響應,但頁面已經渲染了。這是因為瀏覽器和angularjs渲染頁面都需要消耗一定的時間,這個間隔可能很小,甚至讓人感覺不到,這種情況一切正常,但這個時間也可能很長,這時候用戶可能會看到滿屏盡是{{xxxx}}。這種情況被叫做“Flash Of Unrendered Content (FOUC)(K)?and is always unwanted.”。

問題

為了圖方便,我們很喜歡使用下面的做法

 <div>  {{name}} </div>

但這也為滿屏盡是{{}}埋下了坑。當接口,網絡響應速度夠快的情況下,很難發現這個問題,但放在移動端4g或者網絡環境更差的情況下,這個問題就會頻發。

解決辦法

1、ng-cloak

該指令是angularjs的內置的指令,它的作用是隱藏所有被它包含的元素。在瀏覽器加載和編譯渲染完成后,angularjs會自動刪除ngCloak元素屬性,這樣這個元素就會變為可見的。

 <div ng-cloak>  {{name}} </div>

2、ng-bind

該指令是angularjs內置的用于綁定頁面數據的指令??梢允褂迷撝噶畲鎨{}}的方式綁定數據到頁面上。使用ng-bind可以防止未被渲染的{{}}展示給用戶。如下所示:

 <div ng-bind="name">   </div>

3、resolve

當使用routes路由的時候,resolve可以防止我們在route路由被完全加載之前獲取我們需要加載的數據,當數據被加載成功之后,路由再改變而頁面也會呈現給用戶,數據沒有加載成功route不會改變。

可以參考

//www.49028c.com/article/107905.htm

angular.module('myApp', ['ngRoute']).config(function($routeProvider) { $routeProvider .when('/account', { controller: 'AccountCtrl', templateUrl: 'views/account.html', resolve: {  // We specify a promise to be resolved  account: function($q) {  var d = $q.defer();  $timeout(function() {   d.resolve({   id: 1,   name: 'Ari Lerner'   })  }, 1000);  return d.promise;  } } })});

resolve 項需要一個key/value對象,key是resolve依賴的名稱,value可以是一個字符串(as a service)或者一個返回依賴的方法。

resolve is very useful when the resolve value returns a promise that becomes resolved or rejected.

當路由加載的時候,resolve參數里的keys可以作為可注入的依賴:

ngular.module('myApp').controller('AccountCtrl',  function($scope, account) { $scope.account = account;});

我們同樣可以使用resolve key傳遞$http方法返回的結果,as $http returns promises from it's method calls:

angular.module('myApp', ['ngRoute']).config(function($routeProvider) { $routeProvider .when('/account', { controller: 'AccountCtrl', templateUrl: 'views/account.html', resolve: {  account: function($http) {  return $http.get('http://example.com/account.json')  } } })

推薦定義一個獨立的service的方式來使用resolve key,并且使用service來相應返回所需的數據(這種方式更容易測試)。要這樣處理的話,我們需要創建一個service:

首先,看一下accountService,

angular.module('app').factory('accountService', function($http, $q) { return { getAccount: function() {  var d = $q.defer();  $http.get('/account')  .then(function(response) {  d.resolve(response.data)  }, function err(reason) {  d.reject(reason);  });  return d.promise; } }})

定義好service之后我們就可以使用這個service來替換上面代碼中直接調用$http的方式了:

ngular.module('myApp', ['ngRoute']).config(function($routeProvider) { $routeProvider .when('/account', { controller: 'AccountCtrl', templateUrl: 'views/account.html', resolve: {  // We specify a promise to be resolved  account: function(accountService) {  return accountService.getAccount()  } } })

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲美女av黄| 91禁外国网站| 欧美一级视频一区二区| 欧美亚洲一区在线| 在线视频精品一| 欧美男插女视频| 亚洲天堂第二页| 影音先锋欧美精品| 国产精品视频一区二区高潮| 亚洲女同性videos| 日韩在线播放视频| 97国产精品人人爽人人做| 欧美精品在线网站| 疯狂欧美牲乱大交777| 亚洲激情在线观看| 日本国产高清不卡| 国产一区二区三区直播精品电影| 国产精品视频导航| 亚洲网站视频福利| 欧美专区在线播放| 91久久精品美女高潮| 亚洲精品理论电影| 日韩精品中文字| 91精品久久久久久久| 欧美在线观看www| 91精品一区二区| 视频一区视频二区国产精品| 久久综合伊人77777蜜臀| www.亚洲一区| 国产成人精品av在线| 日韩欧美国产一区二区| 日本高清不卡在线| 国产亚洲aⅴaaaaaa毛片| 欧美激情成人在线视频| 欧美精品在线播放| xvideos国产精品| 国产精品成人一区| 7m第一福利500精品视频| 精品久久久久久久久久久久久久| 国产精品久久91| 亚洲wwwav| 日韩精品视频在线观看网址| 国产日韩精品综合网站| 国产成人一区二区三区电影| 亚洲精品久久久久久久久久久| 国产一区二区三区高清在线观看| 亚洲精品视频在线观看视频| 欧美裸体xxxx极品少妇软件| 国产精品va在线播放| 国产一区二区三区网站| 中文字幕日韩有码| 97香蕉超级碰碰久久免费的优势| 国产性色av一区二区| 亚洲网站在线看| 91美女片黄在线观| 精品性高朝久久久久久久| 欧美性极品xxxx娇小| 国产视频精品xxxx| 国产精品第一区| 亚洲欧美国产一本综合首页| 亚洲深夜福利视频| 午夜精品福利在线观看| 国产综合在线视频| 久久免费少妇高潮久久精品99| 国产婷婷97碰碰久久人人蜜臀| 亚洲美女精品成人在线视频| 国产亚洲精品久久| 日韩中文娱乐网| 国产精品视频自拍| 国产色综合天天综合网| 97超碰国产精品女人人人爽| 国产精品99久久99久久久二8| 国产欧美va欧美va香蕉在| 911国产网站尤物在线观看| 国产精品久久久久国产a级| 在线视频国产日韩| 国产成人亚洲综合91精品| 中文欧美日本在线资源| 国产成人+综合亚洲+天堂| 欧美电影免费观看大全| 97视频在线观看免费高清完整版在线观看| 欧美国产日韩一区| 国产九九精品视频| 91影视免费在线观看| 亚洲高清福利视频| 亚洲激情中文字幕| 中日韩美女免费视频网站在线观看| 国产在线精品播放| 在线中文字幕日韩| 日韩在线中文视频| 日韩在线观看网址| 亚洲欧美成人网| 久久亚洲精品国产亚洲老地址| 亚洲国产精品人久久电影| 国产精品男女猛烈高潮激情| 51ⅴ精品国产91久久久久久| 中文字幕亚洲国产| 国产精品自拍网| 26uuu另类亚洲欧美日本老年| 欧美激情性做爰免费视频| 欧美综合在线第二页| 成人国产精品一区| 黄色成人在线免费| 8x海外华人永久免费日韩内陆视频| 97精品在线观看| 中文字幕欧美国内| 国产日韩欧美另类| 国产精品电影久久久久电影网| 黑人狂躁日本妞一区二区三区| 欧美精品激情在线观看| 国产精品一区二区久久久| 国产亚洲欧美日韩一区二区| 亚洲老头同性xxxxx| 日本国产高清不卡| 4p变态网欧美系列| 日韩在线观看精品| 日本欧美一二三区| 国产又爽又黄的激情精品视频| 欧美乱大交做爰xxxⅹ性3| 海角国产乱辈乱精品视频| 久久精品国产欧美亚洲人人爽| 久久久精品美女| 国产亚洲欧美另类中文| 国产激情久久久久| 尤物yw午夜国产精品视频明星| 中文字幕亚洲一区在线观看| 国产精品视频永久免费播放| 欧美成人免费大片| 亚洲福利在线视频| 2019中文字幕免费视频| 国产精品一区二区久久久| 国产日韩欧美视频| 国产精品一区二区三区免费视频| 国产精品永久在线| 国产精品夜间视频香蕉| 国产精品视频1区| 日韩美女免费观看| 91精品在线观看视频| 中文字幕欧美在线| 日韩欧美aaa| 亚洲性69xxxbbb| 久久久久久亚洲精品| 欧美日韩午夜剧场| 欧美亚洲国产日韩2020| 在线播放日韩欧美| 日本国产高清不卡| 亚洲视频在线看| 久久这里有精品| 国产成人综合精品在线| 日韩欧美亚洲综合| 国产福利精品视频| 国产精品欧美一区二区三区奶水| 欧美中文字幕精品| 国产一区二区三区在线免费观看| 26uuu另类亚洲欧美日本老年| 久久久av免费| 亚洲人精品午夜在线观看| 国产一区二区在线免费视频| 国产精品ⅴa在线观看h| 97国产成人精品视频| 97精品视频在线播放| 欧美在线视频免费播放| 国产精品久久久久久久久久久不卡| 91沈先生作品|