Red de conocimiento informático - Material del sitio web - Cómo obtener diferentes niveles de $index en ngRepeat profundamente anidado

Cómo obtener diferentes niveles de $index en ngRepeat profundamente anidado

var appData = [

{

nombre: 'C++ desde el principio hasta el abandono',

autor: 'dreampapple',

libros :[

{nombre: 'github'},

{nombre: 'google'},

{nombre: 'nodejs'},

{nombre: 'react'}

]

},

{

nombre: 'Java desde el principio hasta Corriendo',

autor: 'huh da',

libros: [

{nombre: 'Sprite'},

{ nombre: 'Pepsi'},

{nombre: 'Cóctel'}

]

}

]

]

La solicitud actual es que necesito realizar un bucle en el appData anterior

{{item.name}} índice exterior :{{outerIndex}}

{{ item.author}}

    • {{v.name}} internalIndex:{{innerIndex}}

    • < li class="list-group-item">

      .


  • Parte del controlador:

    función

    removeItem(outerIndex, insideIndex) {

    vm.appData[outerIndex].books.splice(innerIndex, 1);

    }

    Podemos eliminarlo de el controlador Se inicia la función interna removeItem

    Esta función tiene dos parámetros: externalIndex

    e internalIndex

    , donde externalIndex

    significa el primero. uno en el bucle El índice $index

    de la capa, internalIndex

    representa el índice $index

    de la segunda capa. Cada vez que se elimina un elemento, necesitamos saber qué elemento de qué objeto en el primer nivel del bucle se eliminó.

    En la página, guardamos el $index de la primera capa del bucle a través de ng-init="outerIndex = $index"

    y pasamos ng-init="innerIndex = $ index"

    Guarda el $index del bucle de segundo nivel. Entonces todo lo que sigue es simple.

    Si no entiendes bien lo que dije anteriormente, puedes intentar practicarlo tú mismo.

    La siguiente es la parte del código fuente:

    parte HTML

    < título>1