根组件的React/Redux调度操作?

Gro*_*nes 5 firebase reactjs react-native firebase-authentication redux

我正在尝试使用带有React-Native/Redux的firebase我需要在每次用户登录或注销时发送操作.如何从根组件调度操作?

class App extends Component {
    componentWillMount() {
        firebase.auth().onAuthStateChanged((user) => {
            if (user) {
            // Dispatch Action here
            } else {
            // Disptach Action here
            }
        });
    }

    render() {
        const store = createStore(reducers, {}, applyMiddleware(ReduxThunk));

        return (
            <Provider store={store}>
                <Router />
            </Provider>
        );
    }
}

export default App;
Run Code Online (Sandbox Code Playgroud)

far*_*yer 7

class App extends Component {
    constructor() {
        this.store = createStore(reducers, {}, applyMiddleware(ReduxThunk));
    }

    componentWillMount() {
        firebase.auth().onAuthStateChanged((user) => {
            if (user) {
                this.store.dispatch(...);
            } else {
                this.store.dispatch(...);
            }
        });
    }

    render() {
        return (
            <Provider store={this.store}>
                <Router />
            </Provider>
        );
    }
}

export default App;
Run Code Online (Sandbox Code Playgroud)

并且不要在render()功能内部产生任何副作用.它必须是纯粹的功能.