uni-app 圖片上傳(uploadFile)
1 <template> 2 <view> 3 <progress :percent="percent" strock-width="10"></progress> 4 <button type="primary" @tap="cI">chooseImg</button> 5 </view> 6 </template> 7 8 <script> 9 // 注冊一個進度條 10 var _self; 11 12 export default { 13 data() { 14 return { 15 percent:0 16 } 17 }, 18 onLoad() { 19 _self = this; 20 }, 21 methods: { 22 // cI(){ 23 // uni.chooseImage({ 24 // count: 1, 25 // sizetype: ['compressed'], 26 // success(res){ 27 // // tepFliePaths 保存圖片路徑 28 // var imgFiles = res.tempFilePaths; 29 // // 因為沒寫下標, 直接以數組形式輸出 30 // console.log(imgFiles) 31 // } 32 // }) 33 // } 34 cI:function(){ 35 uni.chooseImage({ 36 count: 1, 37 sizeType:['copressed'], 38 success(res) { 39 //因為有一張圖片, 輸出下標[0], 直接輸出地址 40 var imgFiles = res.tempFilePaths[0] 41 console.log(imgFiles) 42 // 上傳圖片 43 // 做成一個上傳對象 44 var uper = uni.uploadFile({ 45 // 需要上傳的地址 46 url:'http://demo.hcoder.net/index.php?c=uperTest', 47 // filePath 需要上傳的文件 48 filePath: imgFiles, 49 name: 'file', 50 success(res1) { 51 // 顯示上傳信息 52 console.log(res1) 53 } 54 }); 55 // onProgressUpdate 上傳對象更新的方法 56 uper.onProgressUpdate(function(res){ 57 // 進度條等於 上傳到的進度 58 _self.percent = res.progress 59 console.log('上傳進度' + res.progress) 60 console.log('已經上傳的數據長度' + res.totalBytesSent) 61 console.log('預期需要上傳的數據總長度' + res.totalBytesExpectedToSend) 62 }) 63 } 64 }) 65 } 66 } 67 } 68 </script> 69 70 <style> 71 72 </style>
效果圖