簡體   English   中英

* ngif首次點擊后無效。 Angular 6

[英]*ngif Not working after first click. Angular 6

我想要實現的是,我根據我想要隱藏的選定值在angular6中有一個Select字段並顯示另一個div。

這是代碼。

 <div class="form-group">
          <label for="servicePriviledges">Managed</label>
          <select type="text" class="form-control" id="managedServiceInfo" name="managedInfo" [(ngModel)]="managed">
            <option value="false">False</option>
            <option value="true">True</option>
          </select>
           <br>
        </div>

<div class="form-group" *ngIf="managed">
          <label for="managerType" >Manager Type</label>
          <select type="text" aria-hidden="false" class="form-control" id="managerType" name="managerType">
            <option value="false">False</option>
            <option value="true">True</option>
          </select>
        </div>

* ngIf在我第一次切換時會產生影響,但之后卻沒有。 未檢測到更改。

我甚至嘗試設置樣式的可見性屬性以及[hidden]指令但得到了相同的結果。

我甚至嘗試過改變方法,但結果沒有變化。

版本信息:

"@angular/core": "^6.1.6",
"@angular/forms": "^6.1.6",

這兩個控件都是'ngForm'形式。

另一種方法是為每個選項附加[ngValue]指令。

<select type="text" class="form-control" id="managedServiceInfo" name="managedInfo" [(ngModel)]="managed">
    <option [ngValue]="false">False</option>
    <option [ngValue]="true">True</option>
</select>

managed將具有字符串值'true''false'更新ngIf像這樣

<div class="form-group" *ngIf="managed === 'true'">
 ...
 </div>

或者您可以使用ngValue,因此托管的布爾值為true,false

 <select type="text" class="form-control" name="managedInfo" [(ngModel)]="managed">
   <option [ngValue]="false">False</option>
   <option [ngValue]="true">True</option>
  </select>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM