如何在角度数组中更改值后获取有序索引?



我有一个数组中的项目列表,比如,

Design
Analysis
Testing
Development

谁的索引会是谁,

0,1,2,3

在这里,我使用的是用于拖放列表元素的角度德拉古拉。随着德拉古拉的使用,我正在改变数组的位置,比如说,

Analysis
Design
Development
Testing

顺序正在更改,但索引位置仍然相同,

1,0,3,2

在这里,索引位置不在顺序中,尽管它看起来像顺序,但它看起来像较旧的索引值。 而无论数组内发生什么变化,我都需要具有相同的索引位置,这意味着即使顺序发生变化,索引位置也应该始终从0,1,2,... so on开始。

我使用的 html 组件,

<div class="card-content">
<div dropDirective (dropEvent)="addDropItem($event)" class="droppable" [dropHighlight]="'highlight'">
<div [dragula]="'second-bag'">
<app-generic-drop-box *ngFor="let item of itemsDropped; index as i" (editBtn)='editBtn($event)' (deleteBtn)='deleteBtn($event)' [genericBox]='item' class="arrow_box dropItem temp" (click)='indexOfItem(i)'> </app-generic-drop-box>
</div>
</div>
</div>

在 ts 文件中,

import { Component, OnInit, Input, Output, EventEmitter, ViewChild, ViewContainerRef, OnDestroy } from '@angular/core';
import { Router, ActivatedRoute } from '@angular/router';
import { ScenarioMapService } from '../scenario-map.service';
import { DynamicFormModel } from '../dynamic-form-config/dynamic-form-model';
import { Textbox } from '../dynamic-form-config/textbox';
import { CONFIG } from '../../app.config';
@Component({
selector: 'app-drop-area',
templateUrl: './drop-area.component.html',
styleUrls: ['./drop-area.component.scss']
})
export class DropAreaComponent implements OnInit, OnDestroy {
indexOfItem(i) {
console.log(i); 
}
}

这里console.log(i)显示了索引位置,如果用户单击列表,如果我更改数组的位置,我需要在更改后获取有序索引,例如0,1,2,3....。 请帮助我实现结果。

要重置 AngularJS 数组中的索引,您可以完全不执行任何操作即可对其进行过滤。

这样,索引将再次设置。

resetArr = orgArr.filter(function(){return true;});

数组索引1,0,3,2将再次0,1,2,3,但数据仍保留在原位。

作为参考:需要重置JavaScript数组堆栈溢出线程的索引...

相关内容

  • 没有找到相关文章

最新更新