【问题标题】:react-native-image-picker reloading the whole app on capturing imagereact-native-image-picker 在捕获图像时重新加载整个应用程序
【发布时间】:2020-04-13 08:45:58
【问题描述】:

使用 react-native-image-picker 捕获照片并保存时,有时会重新加载整个应用程序。这并非一直发生,有时它按预期工作,但有时它会重新加载应用程序。

ImagePicker.launchCamera(options, (response) => {
  this.setState({ fileUri: response.uri, fileName: response.fileName })
});

"react-native": "0.59.1", "react-native-image-picker": "^0.26.10",

【问题讨论】:

  • 基本上this.setState(重新渲染组件。
  • 如何正确操作?有什么建议吗?在这里它正在重新加载整个应用程序...
  • 你想显示你捕获的图像吗?
  • 不,我只是想上传,所以需要uri和图片名称

标签: react-native react-native-image-picker


【解决方案1】:

我可以通过将android:requestLegacyExternalStorage="true" 添加到AndroidManifest.xml 文件中的应用程序标签来修复它

【讨论】:

  • 我发现 react-native-camera 比 react-native-image-picker 更好。 react-native-image0picker 库不再维护,并且在最新的 react-native 版本中存在很多问题
  • 我将它添加到标签中,但应用程序仍在重新加载。
【解决方案2】:

您可以将响应保存到另一个变量而不是状态。它不会重新渲染组件。

fileDetails

ImagePicker.launchCamera(options, (response) => {
  this.fileDetails = {
    fileUrl = response.uri,
    fileName = response.fileName
  }

});

UploadImage(){
  // Use the fileDetails here
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-13
    • 1970-01-01
    • 1970-01-01
    • 2021-11-01
    • 1970-01-01
    • 2019-05-29
    • 2021-10-20
    相关资源
    最近更新 更多