gpt4 book ai didi

Angular |如何更改 FormArray 的顺序?

转载 作者:行者123 更新时间:2023-12-03 19:45:11 24 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Angular - How to reorder items in FormArray?

(2 个回答)


8 个月前关闭。




我正在我的 Angular 应用程序中使用 FormArray 构建一个表单:

public form = new FormGroup({
experiences: new FormArray([])
});

用户可以向阵列添加体验:
addExperience(lotsOfVars) {
const formGroup = new FormGroup({ /* creating a formgroup*/})
(<FormArray> this.form.get('experiences')).push(formGroup);
}

一项新要求是允许用户更改先前输入体验的顺序:

enter image description here

问题:这是如何最好地实现的?

预期结果(类似):
moveUp(i: number) {
(<FormArray> this.form.controls['experiences']).at(i).moveUp()
}

最佳答案

你可以交换控件。

// clone object (otherwise only pointer/reference is saved).
const temp = Object.assign({}, (<FormArray> this.form.controls['experiences']).at(i - 1).value);
(<FormArray> this.form.controls['experiences']).at(i - 1).setValue((<FormArray> this.form.controls['experiences']).at(i).value);
(<FormArray> this.form.controls['experiences']).at(i).setValue(temp);

如需更详细的答案,您可以 check this post .

关于 Angular |如何更改 FormArray 的顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55628138/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com