我有一个用android拍照的功能,用Expo-Image-Picker,我把结果保存在一个本地状态pickedUri,然后通过调度发送到Redux状态,第一次得到pickedUri是未定义的,但是第二次它保存了第一张拍的照片,我觉得问题出在异步功能上。
const handlerTakeImage = async () => {
const isCameraOk = await verifyPermissions();
if (!isCameraOk) return;
const image = await ImagePicker.launchCameraAsync({
allowsEditing: true,
aspect: [16, 9],
quality: 0.8,
});
setPickedUri(image.uri);
console.log(pickedUri);
pickedUri && dispatch(saveImage(pickedUri, props.itemId));
};
1条答案
按热度按时间fhg3lkii1#
我通过将image.uri数据直接发送给调度来修复它,而不是将其保存在本地状态中。
我不知道这是不是个好办法。我可以考虑其他选择。