当数据发生变化时,我们可以通过dataSource = new MatTableDataSource<PeriodicElement>([])
更新表格,然后将数据分配给datasource (this.datasource = data)
会自动更新表格。
我们也可以使用 this.changeDetectorRefs.detectChanges()
。
使用哪个更好?
我认为它会像我下面提到的那样工作,但我怀疑: 假设我们使用这两种方法:
方法 1) new MatTableDataSource
方法 2) changeDetectorRefs
所以
init data:
data=[
{id=1,price = 8,buy = 2},{id=2,price = 10,buy = 5},]
and new data:
data=[
{id=1,price = 20,// price has changed (update)
]
那么:
如果我们使用方法1:mat表中的整行都会受到影响。
如果我们使用方法2:只会改变id为2的第二行,表格中的第一行不会改变。
是吗? 我想知道哪个更好用? (如果它像我解释的那样,那么方法 2 将是首选)