ここでは、私はどこかで絶対に移動する傾向があります:browserHistory.push()はアンチパターンですか?
リソースのページにリソースを削除するボタンがあります。私は別の場所を移動したいのリソースが削除された後にのみ、削除が失敗した場合、移動したくない。これには、「電話をかける、完了するまで待つ、何が起こったか確認する、それに応じてナビゲートする」と言う能力が必要です。
これはコードの匂いのようです。それは、反応ルータの宣言的なアプローチでは気にしません。私が間違っている?
これを行うには、より慣用的な方法があります:
// this.props.resource from container
<Link onClick={_ => {
deleteResource(this.props.resource).then(result => {
if (!result) // don't navigate, dispatch an action
else browserHistory.push("different/place/entirely") // <= totally imperative
}/>
()=> {}宣言は任意のコールバック位置 の反パターンですが、スタックコードブロックにうまく収まります;)ありがとう –