app.component.html で、ストア内の接続ユーザーを別のユーザーに更新した後に提示する新しい値 (アカウント) を取得するカスタム コンポーネント (contact-table コンポーネント) を作成します。
app.component.html:
<contact-table [contacts]="connectedAccount$ |async"></contact-table>
app.component.ts:
export class AppComponent implements OnInit
{
private connectedAccount$: Observable<Account>;
constructor(private store:Store<any>) {
this.connectedAccount$ = this.store
.select(state=> state.connectedAccountReducer.connectedAccount);
this.connectedAccount$
.subscribe(account1=> {
//the app prints any new account that comes up. It's working here.
console.log(account1);
});
}
public ngOnInit() {
this.store.dispatch({
type: updateConnectedAccount,
payload: {
connectedAccount: ACCOUNTS[0]
}
});
}
}
AppComponent クラスのサブスクリプションはうまく機能し、更新があれば起動します。
問題は、app.component.html の非同期パイプが新しいアカウントを contact-table コンポーネントに送信しないことです。彼は更新の通知を受けていないと思います。
contact-table コンポーネントに何が送信されているかを確認しようとしましたが、contact-table コンポーネントの最初の作成で値が 1 つしか取得されず、未定義であることがわかりました。レデューサー関数がアプリの初期状態用に空の Account オブジェクトを作成するため、それは不可能です。
私が見逃したことに気づいたことはありますか?