javascript - Wie bekomme ich bestimmte $index-Werte wiederholt in AngularJS?
阿神
阿神 2017-05-16 13:19:43
0
1
794
<!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的
            }

Meine Anforderung besteht darin, den Timeout-Status erneut anzufordern, nachdem ich auf die Schaltfläche „Timeout-Index abrufen“ geklickt habe. Wenn die Anfrage erfolgreich ist, wird das Timeout als „Ein“ angezeigt Um die Zeitüberschreitung erneut anzufordern, ändern Sie die entsprechende Indexposition des Arrays $rootScope.arr. Der entscheidende Punkt ist hier

阿神
阿神

闭关修行中......

Antworte allen(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值

你可能是想在前台直接判断,可以做,不推荐这样做

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage