因此,我正在工作任务板上,并且正在制作一个将所选任务移至该容器顶部/底部的按钮。它工作正常,但不保存位置,重新加载时它处于先前位置。我注意到当我这样做时,数组的末尾有一个-1索引。我已经在网上搜索了此问题,但找不到类似的内容。
这是该功能的代码:
public moveToBottom(container, index) {
this.container = container;
var lastIndex = (this.container.length -1);
this.loader.show();
transferArrayItem(this.container, this.container, index, lastIndex);
// this.verifyOrder(lastIndex);
this.loader.hide();
console.log(index, lastIndex, container)
我认为这与container.length -1有关,但这是我看到的获取最后一个索引的唯一方法。我只需要索引号,而不是实际对象。
任何帮助将不胜感激!谢谢!
答案 0 :(得分:0)
您只需要使用transferArrayItem
函数。
例如,有一系列电影this.movies
。
因此,按钮单击功能将如下所示:
moveToTheEnd(index) {
moveItemInArray(this.movies, index, this.movies.length - 1);
}
和HTML:
<div cdkDropList class="example-list" (cdkDropListDropped)="drop($event)">
<div *ngFor="let movie of movies; let index = index" style="display: flex; align-items: center">
<div class="example-box" cdkDrag>{{movie}}</div>
<div (click)="moveToTheEnd(index)" style="background: red">Move to the end</div>
</div>
</div>