我有树结构的拖放选项,但由于某些功能,所有节点都被设为兄弟节点,因此我们可以将任何节点设为父节点。
我正在使用 Dragula ng2-dragula进行拖放。
如果我拖动父级,我需要将所有子级与父级一起移动(在放下父级后移动子级就足够了)。
HTML
<tbody [dragula]='"edit-tags-drag"' [dragulaModel]="structure" #tagsBag>
当我在 ts 文件中手动修改结构数组时,视图没有更新。
TS 文件
constructor(public store: Store<any[]>,
private dragulaService: DragulaService,
private translate: TranslateService,
private appRef: ApplicationRef,
private ref: ChangeDetectorRef) {};
ngOnInit () {
this.dragulaService.dropModel.subscribe((item) => {
//Updating the structure
}
}
我试过了
this.ref.detectChanges();
this.ref.markForCheck();
this.appRef.tick();
setTimeout();
也是。如果我有单独的按钮和绑定单击事件,则视图正在更新。任何形式的帮助都会很棒。
编辑:添加了Plunker链接