[英]angular 6 variable or method binding in *ngIf
綁定變量和綁定模板* ngIf中的方法之間是否有任何區別。
例如:
情況1:
<div *ngIf="myVar">ABC</div>
案例2:
<div *ngIf="myFunction()">ABC</div>
myFunction() : boolean {
if (cond1 && cond2 && cond3) {
return true;
} else {
return false;
}
}
對性能有影響嗎?
我正在嘗試使用2種情況,獲取范圍錯誤:最大調用堆棧超出。
幫我這個? 謝謝
就在這里
第一個沒有任何性能問題,因為你直接檢查一個變量,而第二個將有角度使用變化檢測,它會多次觸發
當你每次調用一個函數角火時都會改變檢測周期。 最好使用get屬性
<div *ngIf="myvar">ABC</div>
get myvar() : boolean {
if (cond1 && cond2 && cond3) {
return true;
}
return false;
}
你可以做些什么來避免性能問題是你可以創建一個類變量
public myVar = cond1 && cond2 && cond3
然后你可以在第一個選項中使用它並保持代碼的可讀性
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.