AngularDropnDropCDK与响应式表单一起工作时出现异常——项目会被复制。
创始人
2024-10-24 15:01:17
0

在处理拖放操作时,需要手动从数组中删除项目并重新排序。以下是示例代码:

// HTML模板

{{ item.controls.name.value }}

// 组件 export class MyComponent implements OnInit { items: FormArray;

constructor(private fb: FormBuilder) {}

ngOnInit() { this.items = this.fb.array([ { name: 'Item 1' }, { name: 'Item 2' }, { name: 'Item 3' }, { name: 'Item 4' }, ]); }

onDrop(event: CdkDragDrop) { if (event.previousContainer === event.container) { moveItemInFormArray( this.items, event.previousIndex, event.currentIndex ); } else { transferItemInFormArray( this.items, event.previousIndex, event.currentIndex ); } } }

// 帮助函数 export function moveItemInFormArray(array: FormArray, fromIndex: number, toIndex: number) { const item = array.at(fromIndex); array.removeAt(fromIndex); array.insert(toIndex, item); }

export function transferItemInFormArray(fromArray: FormArray, fromIndex: number, toIndex: number) { const item = fromArray.at(fromIndex); fromArray.removeAt(fromIndex);

const toArray = toIndex >= fromArray.length ? fromArray : fromArray.parent.get('items') as FormArray; toArray.insert(toIndex, item); }

相关内容

热门资讯

十分钟绝活儿!约战竞技场辅助器... 十分钟绝活儿!约战竞技场辅助器(外挂)竟然有辅助软件(哔哩哔哩)十分钟绝活儿!约战竞技场辅助器(外挂...
第九分钟烘培!凑一桌开挂游戏辅... 第九分钟烘培!凑一桌开挂游戏辅助(外挂)其实是有辅助软件(哔哩哔哩)该软件可以轻松地帮助玩家将凑一桌...
七分钟办法!新海贝之城脚本(外... 七分钟办法!新海贝之城脚本(外挂)总是是真的有辅助技巧(哔哩哔哩)1.新海贝之城脚本 选牌创建新账号...
4分钟指引!杭麻圈辅助工具(外... 4分钟指引!杭麻圈辅助工具(外挂)其实是真的有辅助方法(哔哩哔哩)1、全新机制【杭麻圈辅助工具ai辅...
第5分钟演示!浙江茶园辅助(外... 第5分钟演示!浙江茶园辅助(外挂)都是是真的有辅助app(哔哩哔哩)1、游戏颠覆性的策略玩法,独创攻...
三分钟举措!上饶中至能操控吗(... 三分钟举措!上饶中至能操控吗(外挂)好像一直都是有辅助软件(哔哩哔哩)1、让任何用户在无需上饶中至能...
两分钟法子!新天道能不能开挂(... 两分钟法子!新天道能不能开挂(外挂)总是是有辅助教程(哔哩哔哩)1、让任何用户在无需新天道能不能开挂...
三分钟要领!玖玖互娱辅助工具(... 三分钟要领!玖玖互娱辅助工具(外挂)真是存在有辅助脚本(哔哩哔哩)三分钟要领!玖玖互娱辅助工具(外挂...
8分钟手段!wepoker私人... 8分钟手段!wepoker私人局辅助器(外挂)确实有辅助技巧(哔哩哔哩)运wepoker私人局辅助器...
2分钟步骤!科乐游戏辅助脚本视... 2分钟步骤!科乐游戏辅助脚本视频(外挂)原来是真的有辅助插件(哔哩哔哩)1、任何科乐游戏辅助脚本视频...