[解決済み] Observable配列の長さをチェックする方法
2022-06-18 12:29:52
質問
Angular 2のコンポーネントで、Observableの配列があります。
list$: Observable<any[]>;
私のテンプレートでは
<div *ngIf="list$.length==0">No records found.</div>
<div *ngIf="list$.length>0">
<ul>
<li *ngFor="let item of list$ | async">item.name</li>
</ul>
</div>
ただし、Observable配列の場合はlist$.lengthが効きません。
更新しました。
どうやら (list$ | async)?.length は長さを与えてくれるようですが、以下のコードはまだ動作しません。
<div>
Length: {{(list$ | async)?.length}}
<div *ngIf="(list$ | async)?.length>0">
<ul>
<li *ngFor="let item of (list$ | async)">
{{item.firstName}}
</li>
</ul>
</div>
</div>
Observable配列の長さをチェックする方法を教えてください。
どのように解決するのですか?
を使用することができます。
| async
というパイプを使います。
<div *ngIf="(list$ | async)?.length==0">No records found.</div>
更新情報 - 2021-2-17
<ul *ngIf="(list$| async) as list; else loading">
<li *ngFor="let listItem of list">
{{ listItem.text }}
</li>
</ul>
<ng-template #loading>
<p>Shows when no data, waiting for Api</p>
<loading-component></loading-component>
</ng-template>
アップデート - Angular バージョン 6。
cssのSkeletonを読み込んでいる場合、これを使うことができます。配列に項目がない場合は、cssのテンプレートを表示します。データがある場合は
ngFor
.
<ul *ngIf="(list$| async)?.length > 0; else loading">
<li *ngFor="let listItem of list$| async">
{{ listItem.text }}
</li>
</ul>
<ng-template #loading>
<p>Shows when no data, waiting for Api</p>
<loading-component></loading-component>
</ng-template>
関連
-
Angularが報告するインジェクションエラーとその解決方法...$injector:unpr]。
-
Angularフレームワーク入門
-
[解決済み] BehaviorSubjectとObservableの違い?
-
[解決済み] Angular - すべてのリクエストにヘッダを設定する
-
[解決済み】PromiseとObservablesの違いは何ですか?
-
[解決済み] '合成プロパティ @panelState を発見しました。BrowserAnimationsModule" か "NoopAnimationsModule" のどちらかを入れてください'。
-
[解決済み] Angular - "has no exported member 'Observable'" エクスポートされたメンバーがありません。
-
[解決済み] ナンバーパイプ - Angular 2のパラメータは?
-
[解決済み] AngularのHttpClientでエラーをキャッチする
-
[解決済み] Angularでフォームの変更を監視する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] ionic 5 - ngForがデータを表示しない
-
[解決済み] formGroup' は 'form' の既知のプロパティではないため、バインドできません。
-
[解決済み] Angular/RxJS `Subscription` からいつ退会すればいいのか?
-
[解決済み] Angularで変更検知を手動でトリガーする
-
[解決済み】Angular 6でサービスを生成する際に、InjectableデコレータでprovidedInの目的は何ですか?
-
[解決済み] Angular HttpClient "パース中のHttp失敗"
-
[解決済み] index.tsは何に使われているのですか?
-
[解決済み] エラーが発生しました。出力が初期化されていません
-
[解決済み] イベントリスナーを動的に追加する
-
[解決済み] Angular 2 - モデル変更後、ビューが更新されない