将道具传递给React-Native-Modal

时间:2018-05-10 13:30:34

标签: reactjs react-native modal-dialog

我正在使用react-native-modal。是否可以将像图像地址这样的道具传递给模态?我查了但找不到任何文件。

2 个答案:

答案 0 :(得分:0)

看起来你需要传递一个子组件来渲染它。因此,您需要构建一个类似于普通的组件,然后将其传递给Modal组件以进行渲染。来自documentation

render() {
    return (
    <View style={{ flex: 1 }}>
      <TouchableOpacity onPress={this._toggleModal}>
        <Text>Show Modal</Text>
      </TouchableOpacity>
      <Modal isVisible={this.state.isModalVisible}>
        <View style={{ flex: 1 }}>
          <Text>Hello!</Text>
          <TouchableOpacity onPress={this._toggleModal}>
            <Text>Hide me!</Text>
          </TouchableOpacity>
        </View>
      </Modal>
    </View>
  );
}

所以,你想要将<Image src={your_url} />与你想要模态的任何其他东西一起包装,以用Modal标签显示。或者,您可以通过其子道具将整个组件传递给Modal:

render() {
  return (
    <Modal children={<YourCustomComponent {...props} />} />
  )
}

答案 1 :(得分:0)

只需使用自定义组件包装Modal,然后让模态渲染一个作为道具传递的图像。当按下相应的图像时,将可见性设置为true,并且该模式将弹出该图像。