javascript - angularjs怎么獲取repeat里的某些$index值?
問題描述
<!DOCTYPE html><html ng-app='app'><head> <title></title> <script type='text/javascript' src='https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.1/angular.min.js'></script></head><body> <ul><li ng-repeat='d in arr' > <span ng-bind='$index'></span> <span ng-bind='d.status' ng-style='d.color'></span></li> </ul> <a href='javascript:void(0)' ng-click='getOffIndex()'>獲取timeout的索引</a> <script type='text/javascript'>var app = angular.module('app',[]);app.run(function($rootScope){ for(var i=0; i<10; i++){$http({ method : 'JSON', url : '/xxxx/data'}).then(function(data){ /* data返回的數據 */ //data = {status:'on',color:{color:'#000'}} /* 有時返回timeout */ //data = {status:'timeout',color:{color:'red'}} //push到arr數組,然后通過repeat循環展示 /*$rootScope.arr = [{status:'on',color:{color:'#000'}},{status:'on',color:{color:'#000'}},{status:'timeout',color:{color:'red'}},{status:'on',color:{color:'#000'}},{status:'timeout',color:{color:'red'}},{status:'on',color:{color:'#000'}},{status:'on',color:{color:'#000'}},{status:'on',color:{color:'#000'}},{status:'on',color:{color:'#000'}},{status:'on',color:{color:'#000'}},{status:'timeout',color:{color:'red'}} ];*/ $rootScope.arr.push(data);},function(){}); } $rootScope.getOffIndex = function(){//這里如何獲取到全部的status:'timeout'的$index索引值.注意只要timeout的 } //我的需求就是當點擊 '獲取timeout的索引' 按鈕后 將這些timeout的狀態在重新請求,如果請求成功,就會把timeout顯示成on. //因為循環請求有時會timeout超時 //所以現在最大的問題就是怎么把 timeout重新請求.然后修改$rootScope.arr數組的相應下標位置,重點就在這里}); </script></body></html>
$rootScope.getOffIndex = function(){//這里如何獲取到全部的status:'timeout'的$index索引值.注意只要timeout的 }
我的需求就是當點擊 '獲取timeout的索引' 按鈕后 將這些timeout的狀態在重新請求,如果請求成功,就會把timeout顯示成on.因為循環請求有時會timeout超時所以現在最大的問題就是怎么把 timeout重新請求.然后修改$rootScope.arr數組的相應下標位置,重點就在這里
問題解答
回答1:評論說遍歷arr是對的,
$rootScope.arr = [ {status:'on',color:{color:'#000'}}, {status:'on',color:{color:'#000'}}, {status:'timeout',color:{color:'red'}}, {status:'on',color:{color:'#000'}}, {status:'timeout',color:{color:'red'}}, {status:'on',color:{color:'#000'}}, {status:'on',color:{color:'#000'}}, {status:'on',color:{color:'#000'}}, {status:'on',color:{color:'#000'}}, {status:'on',color:{color:'#000'}}, {status:'timeout',color:{color:'red'}}];
你想象成,我獲得這個數組中,屬性為timeout的對象,他在這個數組中的index值
你可能是想在前臺直接判斷,可以做,不推薦這樣做
相關文章:
1. mysql - 如何在有自增id的情況下,讓其他某些字段能不重復插入2. 求救一下,用新版的phpstudy,數據庫過段時間會消失是什么情況?3. mysql - 請問數據庫字段為年月日,傳進的參數為月,怎么查詢那個月所對應的數據4. [python2]local variable referenced before assignment問題5. html - 移動端radio無法選中6. javascript - 我的站點貌似被別人克隆了, google 搜索特定文章,除了域名不一樣,其他的都一樣,如何解決?7. javascript - vue+iview upload傳參失敗 跨域問題后臺已經解決 仍然報403,這是怎么回事啊?8. php - 微信開發驗證服務器有效性9. Python2中code.co_kwonlyargcount的等效寫法10. node.js - win 下 npm install 遇到了如下錯誤 會導致 無法 run dev么?
