問題タブ [strictnullchecks]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
typescript - Ngrx: プロパティ '[Symbol.observable]' がタイプ 'Store にありません' エラー
Angular v5 アプリで NGRX v4.1.1 を使用しています ("strictNullChecks": true
問題ないように見えますが)。
ストアでエラーが表示されます。以下を考えると:
Typescript で次のエラーが発生していますthis.store.select()
:
ストアのスライスを ( を使用して.select
) 選択し、それを型の変数に割り当てるこの方法は、ドキュメントObservable<>
で公式に概説されています(実際には、ドキュメントが ngrx v5 推奨 API に更新されていることがわかりますが、v5 はリリースされていません。まだなので、次の最新バージョンのドキュメントにリンクしました)。
問題は、と互換性のないstore.select()
戻り値の型があることです。Store<>
Observable<>
ただし、これはストアとやり取りする「公式」の方法です(と思います)。だから私は何がうまくいかないのだろうかと思っています。を無効strictNullChecks
にしても、まだエラーが発生します。1 か月後に戻ってきたプロジェクトでエラーが発生しましたが、正確にいつ開始されたのか (または明らかにその理由) を判断できません。
どんな提案でも大歓迎です:)
PS: Typescriptでは、リターンをオブザーバブルにキャストできません。.select()
アップデート
npm を更新すると、エラー メッセージが改善されました。rxjs のインターフェースが更新されたか、おそらく ngrx のインターフェースが更新されたようです。