我正在使用react-navigation. 我正在props从 a传递react-native component到在水龙头上打开的modalfrom react-navigation。
export default class SomeComp extends Component {
...
render() {
const { navigate } = this.props;
return (
<TouchableOpacity
onPress={navigate("Modal", {data: ..., ...})}
..../>
)
}
}
在modalI内部访问goBack()关闭的函数modal,以及props通过的SomeComp
export default class Modal extends Component {
...
render() {
const { data, ... } = this.props.navigation.state.params;
const { goBack } = this.props.navigation;
return (
<View>
<TouchableOpacity
onPress={goBack()}
..../>
<Text>
{data, ...}
</Text>
</View>
)
}
}
我纳闷的是,无论是其可以或不可以传递props 下来的Modal到SomeComp,没有使用redux。在“正常”情况下,react-native parent-child component我会用一个简单的callback. 但是,这在这里不起作用,因为modal是在 中定义的router,因此完全独立于SomeComp。它只是从那里调用...