在angular 2中使用angular材质将行从一个表转移到另一个表
我已经在angular 2中使用angular material实现了简单的表格…我使用了两个mat表格,其中第一个表格中的选定行在单击Move to table 2时传输到第二个表格,反之亦然,单击Move to table 1时传输到第二个表格 但是,当我选择并单击Move To Table 2时,第一个表中的行将被拼接和传输,而第二个表中的行也是如此,我将在第二个表中再次获得先前传输的行 下面显示的是我的输出。 最初,当我传输第一行时,它被拼接并移动到第二个表中。 但当我传输第二行时,先前移动的行再次添加到第二个表中。在angular 2中使用angular材质将行从一个表转移到另一个表,angular,typescript,angular-material,Angular,Typescript,Angular Material,我已经在angular 2中使用angular material实现了简单的表格…我使用了两个mat表格,其中第一个表格中的选定行在单击Move to table 2时传输到第二个表格,反之亦然,单击Move to table 1时传输到第二个表格 但是,当我选择并单击Move To Table 2时,第一个表中的行将被拼接和传输,而第二个表中的行也是如此,我将在第二个表中再次获得先前传输的行 下面显示的是我的输出。 最初,当我传输第一行时,它被拼接并移动到第二个表中。 但当我传输第二行时,
这是因为您没有清除所选内容 从一个表到另一个表的传输完成后,您只需清除所选内容 添加
this.selection.clear()
这在moveToTableTwo()
的末尾,如:
moveToTableTwo(){
...
this.selection.clear();
}
清除选择不允许我将选中的项目移回表1。相反,这对我起了作用:
moveToTableTwo(){
...
this.selection.deselect;
}
是,它现在正在工作,但表2中的行已移动到表1。此解决方案已停止将以前选定的项跨行移动。但是,在进一步检查后,如果单击按钮,则可以在不检查任何内容的情况下再次复制相同的项目。