【发布时间】:2021-01-03 10:27:22
【问题描述】:
我对 RN 很陌生。我知道这个问题正在被重复,但我并没有完全得到我一直在寻找的答案。 所以我目前的项目使用 用于 web 的 expo 和用于 android 设置的 react-native cli。 我想在项目中添加一个图像选择器。 我看到我身边有两个选择。
- RN 图像选择器
- expo-image-picker
我有一些问题和一些问题!!
- RN-native-image 选择器是否与 web 兼容?
- 我认为不是,我认为有两个原因,这个库使用 Nativemodules,它 不会为 web 捆绑,并且当我运行时它会为 NativeModules 提供未定义的错误 网页,而它在 android 上运行良好。
- 在使用 react-native cli 创建 android 构建时是否应该使用 expo-image-picker ??
- 构建不会出错,也不应该,但是当我点击上传图片时,app 选择图像后崩溃。我阅读了该问题的文档和 github。许多人指出 解决它的内存分配问题,可以通过禁用“不保留活动”来解决 开发者选项,我还没试过。
- 同样在 web 上,下面的代码 sn-p 返回 base64 作为 uri,是默认行为吗??
我将此代码 sn-p 用于 expo-image-picker,当我使用 rn cli 构建应用程序时,它最终导致应用程序崩溃,但似乎不会导致 expocli build 出现问题。但我想使用 expo用于安卓的 web 和 rn。 同样在网络上,以下代码 sn-p 返回 base64 作为 uri,这是默认行为吗??
const pickImage = async () => {
try{
let result = await ImagePicker.launchImageLibraryAsync({
mediaTypes: ImagePicker.MediaTypeOptions.Images,
allowsEditing: true,
aspect: [4, 3],
quality: 1,
base64:false
})
if(!result.isCancelled)return result.uri ;
}catch(err){
console.log(err) ;
}
}
那么在这种情况下我应该怎么做,使用 expo-image-picker 因为它似乎与所有平台/两者都兼容? 任何形式的输入都会有所帮助!
【问题讨论】:
标签: expo react-native-android react-native-web