re-frame default template の上にアプリを構築しています。
次の秘書ルートがあります。
(defroute "/users/:id" []
(re-frame/dispatch [:set-active-panel :user-panel])
id
試薬コンポーネントの URL からパラメーターにアクセスしたいと考えています。私が見つけたそれを達成する唯一の方法は、に設定することdb
です。何かのようなもの:
(defroute "/users/:id" [id]
(re-frame/dispatch [:set-user-id id])
(re-frame/dispatch [:set-active-panel :user-panel])
これは間違いなく私のデータベースを汚染し、反応で( react-routerを使用して)次のようなものを書いていたので、そのようなアプローチは私にとって奇妙に思えます:
<Route path="/user/:id" component={MyComponent}>
// object with params automatically attached as props to MyComponent
秘書の URL パラメータを試薬コンポーネントにブロードキャストする正しい方法は何ですか?
UPD:コメントには、この問題に関する github ディスカッションへのリンクがあります。正しい方法として、URL パラメータを db に設定することを参照してください。とにかく、私はそれがあまり好きではありません。これにより、はるかに複雑になります(パラメータの設定、サブスクライブ、設定解除)。また、URL パラメータをアプリの状態として考えるのは好きではありません。ハックか何かありますか?