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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

隱藏/僅顯示一個(gè)子組件

隱藏/僅顯示一個(gè)子組件

白豬掌柜的 2023-10-20 16:32:36
我在 ngFor 中有一個(gè)子組件列表:<ng-container *ngFor="let field of fields"> <button (click)="show = !show">Show</button> <ng-container *ngIf="show">  <app-field [fieldInfo]="field"></app-field> </ng-container></ng-container>我只想顯示這個(gè)特定的app-field組件 if showis true,但這顯然不是這樣,因?yàn)樗O(shè)置show為true所有渲染的組件。我的問(wèn)題實(shí)際上是我無(wú)法顯示所有內(nèi)容,app-fields因?yàn)樗鼈冊(cè)陲@示時(shí)將我的應(yīng)用程序變成一團(tuán)亂麻(將有數(shù)百個(gè)),所以我只想在需要時(shí)顯示它們。如何在單擊時(shí)打開(kāi)/關(guān)閉每個(gè)特定組件的渲染?或者我可以研究其他解決方案嗎?
查看完整描述

2 回答

?
弒天下

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超8個(gè)贊

show變量是全局的,更新顯示值將反映所有app-field組件,因此您需要單獨(dú)確定并指定每個(gè)組件的顯示/隱藏變量。


為此,您應(yīng)該在字段對(duì)象內(nèi)添加一個(gè)顯示成員,如下所示:


<ng-container *ngFor="let field of fields">

 <button (click)="field.show = !field.show">Show</button>

 <ng-container *ngIf="field.show">

  <app-field [fieldInfo]="field"></app-field>

 </ng-container>

</ng-container>

也找到了類(lèi)似的解決方案,檢查這個(gè)答案


查看完整回答
反對(duì) 回復(fù) 2023-10-20
?
Helenr

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超4個(gè)贊

我只需要在設(shè)置為可見(jiàn)時(shí)將組件附加到 DOM。

父組件內(nèi)部:

public?showField:?any?=?{};

然后在父組件模板中:

<ng-container *ngFor="let field of fields">

?<button (click)="showField[childField.id] = !showField[childField.id]">Show</button>

?<ng-container *ngIf="showField[childField.id]">

? <app-field [fieldInfo]="field"></app-field>

?</ng-container>

</ng-container>

*ngIf這會(huì)在is時(shí)破壞組件false,這正是我在這種情況下所需要的。



查看完整回答
反對(duì) 回復(fù) 2023-10-20
  • 2 回答
  • 0 關(guān)注
  • 138 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

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

公眾號(hào)

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