2017-03-16 10 views
2

私はフォームを持っています。提出すると、エフェクトによって捕捉されたアクションをディスパッチします。その結果、httpコールが行われます。私はどのようにこのアクション私は次の操作を行います失敗/完了のバックオフ思ったんだけど:NGRX/@Effectsを使用してフォームの状態を処理する

  • をアクションは、フォームが次の
  • を使用するときのための準備ができて、すべてのフィールドをリセット
  • を完了すると、成功のメッセージを表示
  • は、いくつかのフラグsuccessで店を埋めるために、私は可能性が理解

に失敗アクション再ディスパッチアクションのバックオフエラーを表示し、errorはしかし、フォームをリセットすることは、おそらく呼び出すことによって行われますなど機能。お店にご登録いただき、お子様に適切なreset機能を呼び出すことは可能でしょうか?ほとんどの場合、コンポーネントがエフェクトのようにアクションを聴くことができるようになります。

答えて

2

あなたの効果-残りは店には影響を与えませんが、通知のみを表示する必要がある場合 - その後、私が言うと思います2つの方法があります。

1)あなた自身を示唆したように、あなたのコンポーネントにActionsを注入するには:

class SomeComponent { 
    constructor(actions: Actions) { 
     actions.ofType(SOME_EVENT) 
      .do(myThing) 
      .takeUntil(componentIsDestroyed) 
      .subscribe(); 
    } 
} 

2)か、まったくeffects-とアクション-道を行くと、単純なサービス・メソッドを呼び出していない:

class SomeComponent { 
    constructor(myService: CoolService) { 
    } 

    onClick(): void { 
     mySevice.makeRequest() 
      .do(myThing) 
      .subscribe(); 
    } 
} 
関連する問題