我有角度代碼,我把條件是這樣的:
<li *ngIf="carProfiles$.length > 1">
這有效,但.length在我的編輯器中這是紅色的,它寫道
unresolved variable length
我很擔心這個,因為無論這段代碼是否有效,似乎我做錯了什么。在 ts 檔案中:
readonly carProfiles$: Observable<Profile[]>;
和內部建構式:
this.carProfiles$ = this.allProfiles$.pipe(map((profiles) => profiles.filter((p) => ProfileHelper.isCar(p))));
有什么幫助嗎?我是否需要擔心為什么 text .length 是紅色的,我是否以正確的方式撰寫了條件?
uj5u.com熱心網友回復:
您不是要檢查陣列長度。您正在嘗試檢查發出陣列的 observable 的長度(并且不正確)。相反,您可以首先使用async管道在 observable 中提取發射陣列,然后檢查長度。這個async管道Observable在 backgorund 中訂閱 this 并取消訂閱它。
<li *ngIf="(carProfiles$| async)?.length > 0">
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/399256.html
上一篇:打字稿:反應形式patchValue不適用于私有屬性和getter/setter
下一篇:Rxjs組合最新的可觀察值未定義
