3

在我的本机应用程序中,我在<Image>标签中显示了几个图像,我从本地文件夹加载这些图像。

<Image source={require('./src/images/image1.jpg')} />

我想在用户点击它时保存图像。我可以获取用户点击的图像并将其传递给函数。但我给它放了一个单一的图像路径。

_onPressButton(imgName) {
  CameraRoll.saveToCameraRoll( './src/images/image1.jpg' , 'photo').then(function(result) {
    alert(result);
  }).catch(function(error) {
    alert(error);
  });
}

但这在 iOS 模拟器中给我一个错误,说它无法在路径中找到图像

当我给时,

CameraRoll.saveToCameraRoll( 'https://i.imgur.com/JnrwMpZ.jpg' , 'photo')

有用。

但我想将这些文件保存在我的 src/images 文件夹中。我怎样才能得到这个图像文件的路径或完成这个..?

感谢您对此的任何帮助。

谢谢

4

1 回答 1

3

这是我在 Expo 的解决方案,在 android 上工作,也应该在 ios 上工作

onSave = async () => {
  const asset = Asset.fromModule(require('./src/images/image1.jpg'))
  if (!asset.localUri) {
    await asset.downloadAsync();
  }
  const uri = asset.localUri;
  CameraRoll.saveToCameraRoll(uri, 'photo')
}
于 2018-08-26T17:50:05.753 回答