Javascript 如何确定用户选择的是视频还是图像?
使用react native和expo,我们希望用户能够发布视频或图像 代码如下:Javascript 如何确定用户选择的是视频还是图像?,javascript,react-native,expo,Javascript,React Native,Expo,使用react native和expo,我们希望用户能够发布视频或图像 代码如下: import * as ImagePicker from 'expo-image-picker'; const openImagePickerAsync = async() => { const permissionResult = await ImagePicker.requestMediaLibraryPermissionsAsync(); if (permissionResult.
import * as ImagePicker from 'expo-image-picker';
const openImagePickerAsync = async() => {
const permissionResult = await ImagePicker.requestMediaLibraryPermissionsAsync();
if (permissionResult.granted === false) {
setImage(null);
setHasImage(false);
alert('Permission to access camera roll is required!');
return;
}
const pickerResult = await ImagePicker.launchImageLibraryAsync({
mediaTypes: ImagePicker.MediaTypeOptions.All, <---------------- allowing photos and video
allowsEditing: true,
});
try {
if (pickerResult.cancelled === true) {
setHasImage(false);
console.log('pickerResult is cancelled');
return;
}
if (pickerResult !== null) {
setHasImage(true);
setImage(pickerResult.uri);
console.log(image);
} else {
setImage(null);
setHasImage(false);
console.log('pickerResult is null');
return;
}
} catch (error) {
console.log(error);
}
};
import*作为“世博会图像采集器”中的图像采集器;
常量openImagePickerAsync=async()=>{
const permissionResult=等待ImagePicker.requestMediaLibraryPermissionsAsync();
if(permissionResult.grated==false){
setImage(空);
setHasImage(假);
警报('需要访问摄像机卷的权限!');
返回;
}
const pickerResult=等待ImagePicker.launchImageLibraryAsync({
mediaTypes:ImagePicker.MediaTypeOptions.All,您应该使用pickerResult.type,它将包含视频或图像
你可以参考
如果用户取消拾取,则返回{取消:true
}.
否则,此方法将返回有关选定媒体的信息
当所选项目是图像时,此方法返回{
取消:false,键入:“image”,uri,宽度,高度,exif,base64};
当项目是视频时,此方法返回{cancelled:false,
键入:“视频”,uri,宽度,高度,持续时间}