問題タブ [ngrx]

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.

0 投票する
2 に答える
15875 参照

angular - ngrx/store から単一のアイテムを取得する

状態項目を Angular 2 アプリに保存するために、次のレデューサーを作成しました。項目は、金融商品 (株式/通貨など) の価格オファーです。

私のレデューサーの実装は次のとおりです。

}

簡単ではありませんでしたが、なんとか挿入、更新、および削除を機能させることができました。Redux は、私が何年もコーディングしてきた方法から離れたパラダイム シフトのようなものだと思います。

アプリにインストゥルメント コンポーネント/ページがあります。このページには、InstrumentId ("EUR/USD" など) (payload.Instrument プロパティに格納されている) で示される、1 つの特定のインストゥルメントに関するすべての利用可能な情報が表示されます。

私の問題は、特定の楽器を効率的に検索して店から持ち出す方法がわからないことです。これだけでなく、サーバーからの websocket プッシュを介して頻繁に更新されるため、ストア内の Instrument が更新された場合、フェッチする Instrument も更新されるようにしたいと考えています。そのため、ストアにプッシュされた新しいデータに基づいてビュー コンポーネントを更新し続ける特定の機器をストアで検索し、それを Observable として返す必要があります。

どうすればこれを達成できますか?

0 投票する
2 に答える
740 参照

angularjs - angular 2アプリケーションでグローバル可視ユーザーをどのように保存しますか?

ログイン後、ユーザーを取得します

このuserServiceを実装するにはどうすればよいですか? * バックエンドへの新しい呼び出しなしでユーザー データを取得したいですか? ** https://github.com/ngrx/storeについては知っていますが、誰かがより良い解決策を知っているのではないでしょうか?

0 投票する
1 に答える
1632 参照

javascript - rc5 の angular-cli プロジェクトを構成するには?

angular-cli をインストールして angular 2 rc5 で動作させようとすると、いくつかのエラーに直面しています:

「約束」という名前が見つかりません

「npm install -g angular-cli@webpack」をインストールしましたが、彼はタイピングをインストールしていないようで、webstorm は「Promise」を認識していません。

私が成功しなかったこと:

1.「npm install Typings --save」をインストールしましたが、変化はありませんでした。

2.私が有効にしたwebstormプロジェクト構成で:(役に立たない)

3. tsconfig でターゲットを es5 から es6 に変更すると、webstorm は promise/then/catch を認識するようになりましたが、typescript はそれを知らないというエラーをスローし、すべてのコンポーネントのすべてのクラスで新しいエラーに直面しています。

これは、tsconfig.json : "experimentalDecorators": true で奇妙です。嘘でも変わらない。

ngrx インストール エラーと警告:

別のトピックで、ngrx/core をインストールしようとすると、「npm install @ngrx/core --save」

インストールの最後は次のとおりです。

インストール時に同じ警告が表示されます:「npm install @ngrx/store --save」。

imports 配列の app.module.ts に「StoreModule.provideStore({EmptyReducer})」を追加しました。「ng serve」の後、コンソールに次の警告が表示されます。


私のプロジェクトからのいくつかのコード(空のプロジェクトです):

app.module.ts:

tsconfig.json:

package.json: (「npm install Typings --save」を手動でインストールしました)

読んでくれてありがとう。

0 投票する
1 に答える
228 参照

angular - Angular2 RC5 WebPack ngRx ホット モジュール交換

私は以前、ここにあるアプローチを使用して、HMR を RC4 と連携させ、Webpack の使用時に ngRX の状態を維持しました。

RC5 と ngModules では、ブートストラップ プロセスが変更されており、これを使用するために以前のアプローチをどのように適応させることができるかについて苦労しています。

誰かが私を正しい方向に向けたり、これを行う別の方法を提案したりできますか?

0 投票する
4 に答える
7423 参照

javascript - @ngrx/store with Angular 2: 未定義のプロパティを読み取れません

Angular 2 - RC4 で @ngrx/store を学習しようとしています。コンポーネントから呼び出しているサービスがあり、変更されるたびに車両のリストをコンソール ログに記録しようとしています。

車両

車両減速機

main.ts

車両サービス

AppComponent

しかし、実行すると TypeError が発生しますTypeError: Cannot read property 'vehicles' of undefined

最初の console.log は Store オブジェクトを返しますが、サブスクリプションは失敗したようです。

私が間違っていることは何か分かりますか?

0 投票する
1 に答える
559 参照

ngrx - レデューサー内の @ngrx/store および switch ステートメントに関する問題

次の2 つの@ngrx/store レデューサーがあります。

ただし、何らかの理由で、1 番目のレデューサー (つまりcurrentUserAccountReducer) のディスパッチを発行すると、2 番目のレデューサー (つまり) の状態が変更されauthenticatedReducerます...

この問題の原因となっているディスパッチは次のとおりです。

importsセクションでストアを初期化する方法は次のとおりです。

誰かアドバイスをお願いできますか?

編集:問題はそれauthenticatedが終わることですundefined!!

0 投票する
1 に答える
2565 参照

javascript - Angular 2、ngrx/store、RxJS、およびツリー状データ

select 演算子を rxjs の他の演算子と組み合わせて使用​​し、ChangeDetectionStrategy.OnPush の参照整合性を維持するような方法でツリー データ構造 (ストア内でフラット リストに正規化) をクエリする方法を見つけようとしています。セマンティクスですが、私の最善の試みにより、ツリーの一部が変更されたときにツリー全体が再レンダリングされます。誰にもアイデアはありますか?次のインターフェイスをストア内のデータの代表と見なす場合:

上記の状態を非正規化して、次のインターフェイスを実装するオブジェクトのグラフを返すセレクターを作成する必要があります。

つまり、Observable<ApplicationState> を受け取り、Observable<TreeNode[]> を返す関数が必要です。これにより、各 TreeNode インスタンスは、その子のいずれかが変更されない限り、参照整合性を維持します

理想的には、ノードが変更されたときに完全に新しいグラフを返すのではなく、グラフの一部が変更された場合にのみ子を更新するようにしたいと考えています。ngrx/store と rxjs を使用してそのようなセレクターを構築する方法を知っている人はいますか?

私が試みた種類のより具体的な例については、以下のスニペットをチェックしてください。

0 投票する
2 に答える
830 参照

angular - @ngrx/store を正しく動作させることができません

私はこのAngular 2アプリを持っています。@ngrx/store をアプリに追加しようとしていますが、うまくいかないようです。これが私がこれまでに持っているものです:

product.component.ts

product.reducer.ts

product.service.ts

{{products | async}} で結果が表示されます。*ngFor が私を苦しめるというエラーが表示されません:

元の例外: タイプ 'object' の異なるサポート オブジェクト '[object Object]' が見つかりません。NgFor は、配列などの Iterable へのバインドのみをサポートします。

それが何を意味するかは理解していますが、なぜこれが得られるのかわかりません。私はチュートが示しているものを正確に持っているような気がします...

私が使用したリンク:

残念ながら、ほとんどすべてが古くなっています (RC5 ではありません)。

更新: {{products | 非同期 | json}} 私のhtmlファイルで、すべてのデータを取得します。* ngForでこのエラーが発生する理由がわかりません。