在视图中显示数据的问题(angularjs)

时间:2017-02-22 17:32:16

标签: html angularjs arrays json

这是一个json示例,其中有两个对象即时检索:

 [{"project_id":"538","proyecto":"Caja","tarea":"DEF","fecha_termino":"00-00-00","estado":"Vencido","nombre_completo":"Christiano Ronaldo","alerta":"-Analista responsable: Lionel Messi.; \r\n-Estado Actual: DEF en Construcci\u00f3n detenido por el arbitro.; \r\n-Evaluaci\u00f3n validar en caja lejos. Validacion de pin de trajetas cau.;\r\n28-06-2017 : Usuario Suspende proyecto por cambio de prioridad."},{"project_id":"538","proyecto":"Caja ","tarea":"CAT y Capacity","fecha_termino":"00-00-00","estado":"Vencido","nombre_completo":"Christiano Ronalddo","alerta":"-Analista responsable: Lionel Messi.; \r\n-Estado Actual: DEF en Construcci\u00f3n detenido por capacity de Depto de Tarjetas.; \r\n-Evaluaci\u00f3n validar en caja atalla o redbanc. Validacion de pin de trajetas cau.;\r\n28-06-2017 : Usuario Suspende proyecto por cambio de prioridad."}]

我以角度存储数据以显示:

scope.llamada1 = function() { 

    $http.get("conector.php?tipoDato=query1")
    .then(function(response) {
        $scope.mensajeEspera = "";
        $scope.datos1 = response.data;

        for(var i = 0; i < $scope.datos1.length; i++){
            var currentObj = $scope.datos1[i];
            currentObj.TareasObj = currentObj.tarea + ", " + currentObj.fecha_termino + ", " + currentObj.estado + ", " + currentObj.nombre_completo;
            console.log(currentObj.TareasObj);
            $scope.detalleProyecto = currentObj.TareasObj;
            currentObj.detalleProyecto = currentObj.TareasObj;
        }
    $scope.detalleProyecto = currentObj.TareasObj;
    });
}

我有项目,每个项目都有多个任务,我需要显示如下数据:

<table id="tablaTareas" class="table table-striped table-bordered" >
    <thead>
        <tr>
        <td><b>Proyecto</b></td>
        <td><b>Alerta</b></td>
        <td><b>Tareas</b></td>
        </tr>
    </thead>
    <tbody>
        <tr ng-repeat="x in datos1 ">
            <td style="vertical-align: top;">{{x.proyecto}}</td>
            <td style="vertical-align: top;">{{x.alerta}}</td>
            <td style="vertical-align: top;">
            <table class="table table-striped table-bordered" >
                <thead>
                    <tr>
                        <td><b>Tarea</b></td>
                        <td><b>Termino</b></td>
                        <td><b>Estado</b></td>
                        <td><b>Responsable</b></td>
                    </tr>
                </thead>

                <tbody>
                    <tr ng-repeat="y in x.detalleProyecto track by $index">
                        <td style="vertical-align: top;">{{y.tarea}}</td>
                        <td style="vertical-align: top;">{{y.fecha_termino}}</td>
                        <td style="vertical-align: top;">{{y.estado}}</td>
                        <td style="vertical-align: top;">{{y.nombre_completo}}</td>
                    </tr>
                </tbody>
            </table>

            </td>
        </tr>
    </tbody>
</table>

我不知道代码有什么问题,我想我可能会以错误的方式检索angulajs中的数据?

2 个答案:

答案 0 :(得分:2)

看起来每个datos1的detalleProyecto需要丢失的tarea,fecha_termino,estado和nombre_completo。 我不明白为什么你需要&#34; $ scope.detalleProyecto&#34 ;.,所以我省略了。

for for至少应该是这样才能发挥作用!

for(var i = 0; i < $scope.datos1.length; i++){
    var currentObj = $scope.datos1[i];
    currentObj.TareasObj = {tarea : currentObj.tarea ,  fecha_termino: currentObj.fecha_termino, estado:currentObj.estado, nombre_completo: currentObj.nombre_completo};
    currentObj.detalleProyecto = currentObj.TareasObj;
}

答案 1 :(得分:0)

for(var i = 0; i < $scope.datos1.length; i++){
    var currentObj = $scope.datos1[i];
    $scope.datos1[i].detalleProyecto = [{
        "tarea":currentObj.tarea , 
        "fecha_termino":currentObj.fecha_termino , 
        "estado":currentObj.estado, 
        "nombre_completo":currentObj.nombre_completo
    }];
}