第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

防止在Angular中的數(shù)組中推送重復(fù)對象

防止在Angular中的數(shù)組中推送重復(fù)對象

幕布斯7119047 2022-11-03 10:14:11
我有一個子組件,它通過@Input()父組件(對象數(shù)組)接收數(shù)據(jù)。我映射該數(shù)據(jù)并將對象推送到來自 ngOnChanges 鉤子中的輸入數(shù)據(jù)數(shù)組的每個對象的新數(shù)組中。我的目標(biāo)是防止重復(fù)對象被推入新數(shù)組。每次 ngOnChanges 觸發(fā)時,都會將新對象推送到admins數(shù)組中。我嘗試some在 if 語句中使用方法,但沒有幫助。這是我的 OnChanges 鉤子:ngOnChanges() {  this.adminsGroup.map(a => {    this.authService.getSpecUser(a.user).subscribe(      data => {        data.position = a.permissions;        this.admins.push(data);      }    )  });}所以我想確保在推送之前沒有數(shù)組data。this.admins任何幫助,將不勝感激。
查看完整描述

2 回答

?
largeQ

TA貢獻2039條經(jīng)驗 獲得超8個贊

檢查數(shù)據(jù)中的特定屬性說“id”的唯一性。


if (!this.admins.some(el => el.id === data.id)) {

  this.admins.push(data);

}


查看完整回答
反對 回復(fù) 2022-11-03
?
泛舟湖上清波郎朗

TA貢獻1818條經(jīng)驗 獲得超3個贊

如果數(shù)據(jù)有一個唯一的 ID,你可以這樣做:


let foundAdmin = this.admins.find(admin => admin.id == data.id);

if (foundAdmin == null)

    this.admins.push(data);

如果沒有:


let foundAdmin = this.admins.find(admin => JSON.stringify(admin) === JSON.stringify(data));

if (foundAdmin == null)

    this.admins.push(data);


查看完整回答
反對 回復(fù) 2022-11-03
  • 2 回答
  • 0 關(guān)注
  • 121 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號