1. 程式人生 > 實用技巧 >react-native上傳圖片、視訊

react-native上傳圖片、視訊

1.上傳視訊:

  使用外掛 :react-native-image-picker

 import*asImagePickerfrom'react-native-image-picker'
const options = {
            title: '選擇視訊',
            cancelButtonTitle: '取消',
            takePhotoButtonTitle: '錄製視訊',
            chooseFromLibraryButtonTitle: '選擇視訊',
            mediaType: 'video',
            videoQuality: 
'medium' // 視訊質量 'low', 'medium', or 'high' on iOS, 'low' or 'high' on Android };
ImagePicker.showImagePicker(options, (response)
=> {})

2.上傳圖片:

  使用外掛 :react-native-syan-image-picker

元件呼叫時,支援傳入一個options物件,可設定的屬性如下:

屬性名型別是否可選預設值描述
imageCount int 6 最大選擇圖片數目
isRecordSelected bool false 記錄當前已選中的圖片
isCamera bool true 是否允許使用者在內部拍照
isCrop bool false 是否允許裁剪,imageCount 為1才生效
CropW int screenW * 0.6 裁剪寬度,預設螢幕寬度60%
CropH int screenW * 0.6 裁剪高度,預設螢幕寬度60%
isGif bool false 是否允許選擇GIF,暫無回撥GIF資料
showCropCircle bool false 是否顯示圓形裁剪區域
circleCropRadius float screenW * 0.5 圓形裁剪半徑,預設螢幕寬度一半
showCropFrame bool true 是否顯示裁剪區域
showCropGrid bool false 是否隱藏裁剪區域網格
quality int 90 壓縮質量(安卓無效,固定魯班壓縮)
minimumCompressSize int 100 小於100kb的圖片不壓縮(Android)
enableBase64 bool false 是否返回base64編碼,預設不返回
freeStyleCropEnabled bool false 裁剪框是否可拖拽(Android)
rotateEnabled bool true 裁剪是否可旋轉圖片(Android)
scaleEnabled bool true 裁剪是否可放大縮小圖片(Andro

 importSyanImagePickerfrom'react-native-syan-image-picker';

const options = {/*配置參考上表*/}

SyanImagePicker
.asyncShowImagePicker(options)
.then(photos => {
    // 選擇成功
    console.log('當前選擇的圖片', photos);
})
.catch(err => {
    // 取消選擇,err.message為"取消"
})