所以我有一个可排序的列表,它是*ngFor
中的几个元素,我拖放。
在下降我想获得项目的新订单。
所以我添加了一个事件,但QueryList的顺序保持不变。
以下是我试过的一些没有运气的事情
public getOrder() {
var records: QueryList<SimpleGridRecord> = this.simpleGridRecords.length > 0 || this.simpleGridDraggable.simpleGridRecords;
records.notifyOnChanges()
// this.cd.detectChanges();
records.forEach((s:SimpleGridRecord) => {
console.log(s.index);
console.log(s.item.getKey('id'));
});
}
无论如何都要获得更新的元素顺序列表?
我将索引和id保存在我循环的对象中
问候
肖恩
答案 0 :(得分:1)
您可以使用@ContentChildren()
或@ViewChildren()
订阅更改:
@ViewChildren(SimpleGridRecord) records: QueryList<SimpleGridRecord>;
ngAfterViewInit() {
this.records.changessubscribe(val => console.log(this.records.toArray()));
}