微信小プログラムクラウド開発【画像をアップロードして入庫してレンダリングする】
18002 ワード
メモ2020-07-29
wxml
js
wxml
js
wxml
js
画像をアップロード
wxml
<button type="primary" bindtap="clickBtn"> </button>
js
clickBtn(){
wx.chooseImage({
success:res=>{
console.log(res)
//
var filePath=res.tempFilePaths[0]
this.cloudFile(filePath)
}
})
},
cloudFile(path){
wx.cloud.uploadFile({
// ,
cloudPath:Date.now()+".jpg",
// filepath
filePath:path
}).then(res=>{
console.log(res)
})
},
複数の画像をアップロードしてレンダリング
wxml
<!--pages/demo6/demo6.wxml-->
<button type="primary" bindtap="clickBtn"> </button>
<image wx:for="{{urlArr}}" wx:key="index" src="{{item}}"></image>
js
//
var urlArr=[];
var filePath=[];
//
clickBtn(){
wx.chooseImage({
success:res=>{
console.log(res)
filePath=res.tempFilePaths
filePath.forEach((item,idx)=>{
var filename=Date.now()+"_"+idx;
this.cloudFile(filename,item)
})
}
})
},
// ,
cloudFile(filename,path){
wx.showLoading({
title: ' ',
})
wx.cloud.uploadFile({
// ,
cloudPath:filename+".jpg",
// filepath
filePath:path
}).then(res=>{
urlArr.push(res.fileID)
if(filePath.length==urlArr.length){
this.setData({
urlArr
})
}
wx.hideLoading()
})
},
画像のプレビューをアップロードして、クリックして入庫を提出します
wxml
<button type="primary" bindtap="clickBtn"> </button>
<image wx:for="{{arr}}" wx:key="index" src="{{item}}"></image>
-------------------------------------------------
<button type="primary" bindtap="subBtn"> </button>
js
//
var urlArr=[];
var filePath=[];
//
clickBtn(){
wx.chooseImage({
success:res=>{
console.log(res.tempFilePaths)
this.setData({
arr:res.tempFilePaths
})
filePath=res.tempFilePaths
}
})
},
//
subBtn(){
filePath.forEach((item,idx)=>{
var filename=Date.now()+"_"+idx;
this.cloudFile(filename,item)
})
},
//
cloudFile(filename,path){
wx.showLoading({
title: ' ',
})
wx.cloud.uploadFile({
// ,
cloudPath:filename+".jpg",
// filepath
filePath:path
}).then(res=>{
urlArr.push(res.fileID)
if(filePath.length==urlArr.length){
this.setData({
urlArr
})
}
wx.hideLoading()
})
},