使用带有Redux的React Native和react-native-router-flux,我有一个动作创建者,在其中尝试使用Actions.key(在这种情况下为Actions.home),但它不起作用。我可能做错了什么?
这是我的动作创建者:
import * as actionTypes from './actionTypes'
import { Actions } from 'react-native-router-flux'
export const navigateHome = (text) => {
Actions.home //This does not work for some reason
return {
type: actionTypes.NAVIGATE_HOME_SUCCESS,
}
}
我的首页
<Scene/>
设置如下:const RouterWithRedux = connect()(Router)
const store = configureStore()
export default class App extends Component {
render() {
return (
<Provider store={store}>
<RouterWithRedux>
<Scene key='root'>
<Scene component={Login} initial={true} key='login' title='Login'/>
<Scene component={Home} key='home' title='Home' type={ActionConst.REPLACE}/>
</Scene>
</RouterWithRedux>
</Provider>
)
}
}
但是,当我使用
<Text onPress={Actions.home}>Continue</Text>
在组件内部进行测试时,它导航至<Home/>
正常。 最佳答案
您需要在Actions.home()
中调用navigateHome
,没有Actions.home
就不能只是执行()
。
关于javascript - React Native/Redux和react-native-router-flux:为什么Actions.key在 Action 创建者内部不起作用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39635383/