ForEach一般配合著List或者Row(具體配合什么無(wú)所謂)果录,明明外層的array數(shù)組的某一個(gè)數(shù)據(jù)更新了咽袜,但是UI沒(méi)更新,排查問(wèn)題方向
1:最后一個(gè)參數(shù)問(wèn)題盅视,必須參數(shù)更新捐名,才更新UI
2:就是大部分遇到的,Iitem布局沒(méi)有抽取Component闹击,直接當(dāng)前頁(yè)面寫(xiě)的镶蹋,這種情況下,array數(shù)據(jù)增加或者刪除赏半,可更新贺归,但是直接取出某一個(gè)數(shù)據(jù)array[index],然后直接操作數(shù)據(jù)array[index].name = "xxxx"断箫,這種直接更新拂酣,不可以產(chǎn)品ui的更新,如果還是不想抽取component仲义,可以用如下方式解決:
const entity = new 新的實(shí)體()
entity.name = "xxxx"
array[index] = entity
這種是可以更新的
3:如果不想new一個(gè)新的踱葛,然后賦值丹莲,可以考慮抽取component,也就是ListItem里面是一個(gè)自定義組件
然后自定義組件內(nèi)部接受@ObjectLink 尸诽,這種也有問(wèn)題就是只能監(jiān)聽(tīng)一層甥材,如果想繼續(xù)漸層下一場(chǎng),必須繼續(xù)抽取component