Я использую пакет ng2-dragula для перетаскивания объектов, но после изменения порядка элементов списка не могу получить обновленный индекс массива. Вот код, что я пытаюсь.
HTML
<ul [dragula]='"bag-items"' ([dragulaModel])="contactArray">
<li *ngFor="let field of contactArray" >
<label>{{field.role}}</label>
</li>
</ul>
JS
import { DragulaService } from "ng2-dragula";
@Component({
selector: 'app-edit-project',
templateUrl: './edit-project.component.html',
styleUrls: ['./edit-project.component.css'],
providers: [
DragulaService
]
})
export class ProjectComponent implements OnInit {
constructor(private dragula:DragulaService) {
for(let i =0; i<=this.contactArray.length; i++) {
console.log(this.contactArray[i].index)
}
}
}
когда я пытаюсь утешить this.contactArray [i] .index после переупорядочения списка. Не работает должным образом.
Default order looks like this
A
B
C
D
{ Value : A, index: 1 }
{ Value : B, index: 2 }
{ Value : C, index: 3 }
{ Value : D, index: 4 }
После того, как я переупорядочу, нужно обновить новый индекс, как показано ниже для обновления API,
D
B
C
A
{ Value : D, index: 1 }
{ Value : B, index: 2 }
{ Value : C, index: 3 }
{ Value : A, index: 4 }
this.http.post (API_URL + 'product / update', BodywithcontactArray);
Любой совет эксперта, пожалуйста.