我将数据发送到我的API,然后调用DataManifest.js页面
在此页面上,我只需拨打import { Actions } from 'react-native-router-flux';
我有一个按钮,点击后会转到index.js
页面
<Button
onPress={ Actions.index() }
title="Return"
color="#841584"
/>
但是,在加载页面时,它会直接调用index.js
而不点击按钮
并返回以下调试器警告:
警告:在现有状态转换期间无法更新(例如 在
render
或其他组件的构造函数中)。渲染方法 应该是道具和国家的纯粹功能;构造函数的副作用 是一种反模式,但可以移到componentWillMount
。
答案 0 :(得分:3)
想想onPress是什么。这是一个功能。你需要传递一个函数。你最初传递的是运行该函数的结果。你不想传递运行函数的结果,你想要一个函数。所以你会通过onPress={Actions.index}
。如果您需要管理调用函数的参数,那么您可以将其包装在另一个函数中并以这种方式进行管理。像其他答案一样onPress={ () => { Actions.index() } }
。但是你看,这是返回一个函数,而不是运行函数的结果。
答案 1 :(得分:1)
这
onPress={ Actions.index() }
要
onPress={ () => { Actions.index() } }