react-native - React Native:react-native-image-picker 没有触发 launchImageLibrary 的回调
问题描述
我正在使用 React Native 构建一个移动应用程序。我的应用程序需要访问照片库和相机。我正在使用这个库,https://github.com/react-native-image-picker/react-native-image-picker。我可以启动照片库,但是当我选择照片时,它没有触发回调函数。
这是我的代码:
const renderPreviewImage = () => {
if (! photoUri) {
return null
}
return (
<Image
resizeMode={"cover"}
resizeMethod={"scale"}
style={{width: 200, height: 200}}
source={{uri: photoUri}}
/>
)
}
return (
<View style={{flex: 1}}>
<Button label={"Select Photo"} onPress={() => {
launchImageLibrary({
mediaType: "photo"
}, (response) => {
console.log('This is not triggered')
})
}} />
{renderPreviewImage()}
</View>
)
正如您在代码中看到的注释,未调用回调。我的代码有什么问题,我该如何解决?
解决方案
在 Button 的 onPress 中试试这个:
let result = await ImagePicker.launchImageLibraryAsync({
mediaTypes: ImagePicker.MediaTypeOptions.Images,
allowsEditing: false,
quality: 1,
});
if (!result.cancelled) {
//This is the image being returned
setImage(result.uri);
}
// This how you display the image in your main component below:
{image && (
<Image source={{ uri: image }}
style={{ width: '100%', height: '100%' }} />
)}
推荐阅读
- c++ - C ++不能使用从父对象到对象的动态转换来存储向量内的元素
- python - 如何在 Django 中包含带有 app_name 的 url 而无需使用反向应用程序名称?
- bokeh - Bokeh Server Plot - 如何使新值出现在具有固定轴范围的中心
- c++ - ascii 和 unicode 在处理级别上有什么区别吗?
- java - 我的应用程序正在无限循环中工作
- r - 考虑特定序列,将一组函数应用于多个数据帧
- powershell - 通过powershell从文件名中删除SXXEXX?
- java - 在多个 JLabels 周围添加边框
- html - 在 Laravel Blade 中获取路由未定义错误
- entity-framework-core - 无法在实体框架上添加迁移