Heim > Fragen und Antworten > Hauptteil
Es gibt derzeit ein Szenario: Tief verschachtelte Unterkomponenten (Anzeigekomponenten) müssen Aktionen (z. B. Routensprünge) auslösen, und Sie möchten vermeiden, dass zugehörige Aktionsersteller- oder Dispatcher-Methoden Schicht für Schicht übergeben werden. Also möchte ich Folgendes tun:
Legen Sie die Redux-Store-Instanz als globales Objekt fest, d. h. global.store = store, und dann kann store.dispatch() überall und jederzeit verwendet werden
Das bedeutet, dass die MapDispatcherToProps-Methode von React-Redux nicht mehr verwendet wird.
Gibt es dabei irgendwelche Probleme oder Fallstricke?
天蓬老师2017-05-19 10:22:14
这样明显不符合redux 设计初衷了,任何组件都可以通过全局的store 去修改状态了。建议还是在action触发放在 root组件, 至于深层组件,可以通过事件通知到 root组件,再有组件触发 action. 其次组件嵌套层级一般是不建议超过3级以上的,可以去考虑下是否真的需要使用父子组件的形式,是否可以由兄弟组件替代部分。