React Native / Expo-将图像传递到预览屏幕

时间:2019-04-19 01:33:19

标签: reactjs react-native camera expo

我正在使用Expo相机API拍照-

//CameraScreen.js

capture = async () => {
    if(this.camera){
      this.camera.takePictureAsync()
      .then( (data) => {
        console.log(data)
        this.props.navigation.navigate("PreviewScan", {data: data})
      })
    }
  }

拍摄完照片后,我想导航到另一个屏幕,在其中可以预览照片并上传/执行任何操作。我尝试通过参数传递数据并在预览屏幕中获取-

// PreviewScreen.js

render(){

      const data = this.props.navigation.getParam('data');

      console.log(data);

      return (

        <View style={{ flex: 1 }}>

          <Image source={data.uri} />

          <TouchableOpacity style={styles.backButton} onPress={ () => { this.goBack() } }>
            <Image source={require('../assets/icons/back-arrow.png')} />
          </TouchableOpacity>
        </View>
      );
    }

但是我得到了失败的Prop类型的源代码。

什么是最好的方法?

1 个答案:

答案 0 :(得分:0)

答案是只在image标签中指定URI选项。

如此

<Image source={data.uri} />

成为

<Image source={{ uri: data.uri }} />