1.第一次写小程序项目时遇到的多张图片上传问题,小程序api上传upload一次只能传一张,以及视频的上传。附上代码
wxml页面代码2.!--pages/user/quiz/quiz.wxml--formbindsubmit"onSave"textareaclass'opinionopinion_text'name"opinion"placeholder"输入您要发送的内容"bindinput'comment'/
3.viewclass"content"!--imageclass"microphone"src"/images/microphone.png"/image--viewclass"imgcontainer"imagebindtap'urlchoose'class"picture"src"/images/add2.png"/image/view
4.viewclass'up_imgs'viewclass"img"wx:for"{{imgs}}"wx:for-item"item"wx:key"*this"imagesrc"{{item}}"data-index"{{index}}"mode"aspectFill"bindtap"previewImg"class'upload_imgs'/imageviewclass"delete-btn"data-index"{{index}}"catchtap"deleteImg"!--imagesrc'/images/rubbish@3x.png'/image--textX/text/view/view
5./viewviewclass"sectiontcvedioinfo"wx:if"{{src!''}}"videosrc"{{src}}"controlsclass'vedios'/video!--viewcatchtap'deletevideo'class"delete-btn2"text删除/textimagesrc'/images/rubbish@3x.png'/image/view--/view/viewviewclass'view_bottom'viewclass'section-line'/viewviewclass'view_bottom_btn'buttonclass"quiz-btnsubmit-btn"formType"submit"bindtap'addcompretent'确定/buttonbuttonclass'quiz-btncancel-btn'bindtap'canceladd'取消/button/view/view/form
js代码6.//pages/course/addNewArticle/addNewArticle.js
7.import{String}from"../../utils/util.js";
8.varimg srcnewArray();
9.varvediosrc"";
10.varcomment;
11.varids;
12.varvideo"";
13.varuploadimgnewArray();
14.varkeys0;
15.varUtilrequire("../../utils/util.js");
16.varapirequire("../../api.js"),
17.appgetApp();
18.Page({
19./**
20.*页面的初始数据
21.*/
22.onReady:function(res){
23.this.videoContextwx.createVideoContext("myVideo");
24.},
25.inputValue:"",
26.data:{
27.tempFilePaths:[],
28.imgs:[],
29.bool:false,
30.src:""
31.},
32.uploadimage(filePaths,successUp,failUp,i,length){
33.varthatthis;
34.wx.uploadFile({
35.url:api.audio.upload,//后台给的接口
36.header:{
37.//请求头和ajax写法一样
38."content-type":"multipart/form-data"
39.},
40.filePath:filePaths[i],
41.formData:{
42.uploadCat:"img"
43.},
44.name:"upload",
45.//success:(resp){
46.//successUp++;
47.//},
48.fail:res{
49.failUp++;
50.},
51.success:function(res){
52.successUp++;
53.console.log(res.data);
54.vardatasJSON.parse(res.data);
55.uploadimg.push(datas.results);
56.console.log("333333333");
57.console.log(uploadimg);
58.},
59.fail:function(res){
60.console.log(res.data);
61.}
62.});
63.},
64.urlchoose:function(){
65.varthatthis;
66.//console.log(that)
67.wx.showActionSheet({//模态框选择
68.itemList:["选择图片","选择视频"],
69.success:function(res){
70.console.log(res.tapIndex);
71.if(res.tapIndex0){
72.wx.chooseImage({
73.count:9,//设置最多九张
74.sizeType:["original","compressed"],
75.sourceType:["album","camera"],
76.success(res){
77.keys0;
78.varsuccessUp0;//成功个数
79.varfailUp0;//失败个数
80.varlengthres.tempFilePaths.length;//总共个数
81.vari0;//第几个
82.//vartempFilePathsres.tempFilePaths;
83.for(vari0;ires.tempFilePaths.length;i++){
84.img src.push(res.tempFilePaths[i]);
85.that.uploadimage(
86.res.tempFilePaths,
87.successUp,
88.failUp,
89.i,
90.length
91.);
92.}
93.console.log(img src);
94.//that.data.imgsimg src;
95.that.setData({
96.imgs:img src
97.});
98.console.log("图片"+img src[0]);
99.}
100.});
101.}elseif(res.tapIndex1){
102.//选择视频
103.wx.chooseVideo({
104.sourceType:["album","camera"],
105.//maxDuration:60,
106.size:20,
107.camera:["front","back"],
108.success:function(res){
109.keys1;
110.src:res.tempFilePath;
111.bool:true,(vediosrcres.tempFilePath);
112.that.setData({
113.src:vediosrc
114.});
115.wx.uploadFile({//开始上传
116.url:api.audio.upload,//接口地址
117.header:{
118.//请求头和ajax写法一样
119."content-type":"multipart/form-data"
120.},
121.filePath:vediosrc,
122.formData:{
123.uploadCat:"video"
124.},
125.name:"upload",
126.success:function(res){
127.console.log(res.data);
128.console.log("hahahahhahhahahah");
129.varvideosJSON.parse(res.data);
130.videovideos.results;
131.console.log(video);
132.},
133.fail:function(res){
134.console.log(res.data);
135.}
136.});
137.//console.log(res.tempFilePath)
138.}
139.});
140.console.log(vediosrc);
141.//that.setData({
142.//src:vediosrc,
143.//})
144.}
145.},
146.fail:function(res){
147.console.log(res.errMsg);
148.}
149.});
150.},
151.//删除图片
152.deleteImg:function(e){
153.varimgsthis.data.imgs;
154.varindexe.currentTarget.dataset.index;
155.img src.splice(index,1);
156.this.setData({
157.imgs:img src
158.});
159.},
160.//预览图片
161.previewImg:function(e){
162.//获取当前图片的下标
163.varindexe.currentTarget.dataset.index;
164.//所有图片
165.varimgsthis.data.imgs;
166.wx.previewImage({
167.//当前显示图片
168.current:imgs[index],
169.//所有图片
170.urls:imgs
171.});
172.},
173./**
174.*生命周期函数--监听页面加载
175.*/
176.onLoad:function(options){
177.idsoptions.id;
178.console.log(ids);
179.},
180./**
181.*生命周期函数--监听页面初次渲染完成
182.*/
183.onReady:function(){},
184./**
185.*生命周期函数--监听页面显示
186.*/
187.onShow:function(){
188.//this.urlchoose();
189.if(vediosrc!null){
190.bool:true;
191.}
192.},
193./**
194.*生命周期函数--监听页面隐藏
195.*/
196.onHide:function(){},
197./**
198.*生命周期函数--监听页面卸载
199.*/
200.onUnload:function(){
201.//wx.reLaunch({
202.//url:'../audiodetail/audiodetail?id'+ids
203.//})
204.},
205./**
206.*页面相关事件处理函数--监听用户下拉动作
207.*/
208.onPullDownRefresh:function(){},
209./**
210.*页面上拉触底事件的处理函数
211.*/
212.onReachBottom:function(){},
213./**
214.*用户点击右上角分享
215.*/
216.onShareAppMessage:function(){},
217.comment:function(e){
218.//获取input输入的值
219.varthatthis;
220.that.setData({
221.comment:e.detail.value
222.});
223.commentthat.data.comment;
224.console.log(comment);
225.},
226.//发布感悟
227.addcompretent:function(){
228.console.log("图片2222"+uploadimg);
229.console.log(video);
230.console.log(img src+"图片路径333333");
231.//console.log('1111eeeeeeeeee')
232.if(commentnull){
233.wx.showModal({
234.title:"提示",
235.content:"感悟内容不能为空"
236.});
237.}else{
238.console.log(vediosrc);
239.console.log(uploadimg);
240.console.log("ppppppppppp");
241.if(keys0){
242.console.log(img src+"图片路径333333");
243.console.log(uploadimg);
244.varuserapp.globalData.userInfo.id;
245.//varuser'6846990'
246.console.log("22222222222222ee");
247.wx.request({
248.url:
249.api.audio.addcompretents+
250."?userId"+
251.user+
252."videoId"+
253.ids+
254."content"+
255.comment+
256."img"+
257.uploadimg+
258."uploadCatimg",
259.success:function(res){
260.if(res.data.code200){
261.(img src[]),(uploadimg[]);
262.wx.showModal({
263.title:"提示",
264.content:"发布成功",
265.success:function(res){
266.if(res.confirm){
267.wx.navigateTo({
268.url:
269."../../pages/studentcompretent/studentcompretent?id"+
270.ids
271.});
272.}
273.}
274.});
275.}
276.}
277.});
278.}elseif(!String.isBlank(video)){
279.console.log(video);
280.//console.log('3333333333eeee')
281.varuserapp.globalData.userInfo.id;
282.//varuser'6846990'
283.console.log(user+""+ids+""+comment+""+video);
284.console.log("上传文件信息:"+video);
285.wx.request({
286.url:
287.api.audio.addcompretents+
288."?userId"+
289.user+
290."videoId"+
291.ids+
292."content"+
293.comment+
294."img"+
295.video+
296."uploadCatvideo",
297.success:function(res){
298.if(res.data.code200){
299.wx.showModal({
300.title:"提示",
301.content:"发布成功",
302.success:function(res){
303.if(res.confirm){
304.wx.navigateTo({
305.url:
306."../../pages/studentcompretent/studentcompretent?id"+
307.ids
308.});
309.console.log(ids);
310.}
311.}
312.});
313.//video""
314.}
315.}
316.});
317.}
318.}
319.},
320.canceladd:function(){
321.wx.navigateBack({});
322.}
323.});
样式wxss324./*pages/user/quiz/quiz.wxss*/
325.page{font-size:30rpx;}.opinion_text{padding:10px;}.content{padding:10rpx20rpx;background:#ffffff;position:relative;min-height:400rpx;}.content.picture{width:100rpx;height:100rpx;position:absolute;top:40rpx;left:58rpx;z-index:999;}.plus{width:100rpx;height:100rpx;box-sizing:border-box;margin:20rpx;}.imgcontainer{width:160rpx;height:160rpx;border:1pxsolid#eee;margin-left:3px;}.img{margin-right:22rpx;display:inline-block;position:relative;}.delete-btn{width:30rpx;height:30rpx;border-radius:50%;border:1rpxsolid#eee;background-color:#cd5c5c;position:absolute;right:5rpx;top:35rpx;color:#eee;z-index:100;}.delete-btntext{position:absolute;right:6rpx;top:-3rpx;font-size:25rpx;font-weight:bold;}
326..up_imgs{width:705rpx;margin:0auto;}.upload_imgs{margin-top:30rpx;width:210rpx;height:210rpx;}
327..vedioinfo{width:658rpx;margin:0auto;margin-top:30rpx;}.vedios{height:300rpx;width:300rpx;margin-left:-20rpx;/*position:relative;*/}.delete-btn2{width:300rpx;height:30rpx;/*margin-top:320rpx;margin-left:150rpx;*/text-align:center;}.delete-btn2text{font-size:30rpx;color:#aaa;}
328..view_bottom{width:750rpx;height:40rpx;background-color:white;position:absolute;bottom:0;}
329..view_bottom_btn{display:flex;margin-bottom:8px;}
330..quiz-btn{width:350rpx;height:82rpx;border-radius:36rpx;font-size:32rpx;color:white;font-family:PingFang-SC-Bold;line-height:72rpx;}
331..submit-btn{background:rgba(233,147,38,1);}
332..cancel-btn{background:rgba(178,178,178,1);}
333..opinion{width:658rpx;height:250rpx;background:rgba(244,244,244,1);border-radius:6rpx;margin:24rpxauto;}
334..section-line{/*分界线*/width:750rpx;height:2rpx;background:rgba(208,208,208,1);margin-bottom:15rpx;}
小程序图片视频上传-打卡小程序无法上传视频-微信小程序视频上传
浏览量:1583
时间:
来源:panlxiang
版权声明
即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

最新资讯
-
抖音再现本地生活服务,咫尺同城圈商业变现新通道
短视频成为本地生活探店网红营销变现引流的新阵地,每一位网红都渴望在短视频内“一夜爆红”。即速应用团队对多商家小程序进行升级,打造了咫尺同城圈:“同城探店营销助手”,不仅完善商家营销技巧,还助力探店网红玩转本地生活服务。 -
抖音再现本地生活服务,咫尺同城圈商业变现新通道
短视频成为本地生活探店网红营销变现引流的新阵地,每一位网红都渴望在短视频内“一夜爆红”。即速应用团队对多商家小程序进行升级,打造了咫尺同城圈:“同城探店营销助手”,不仅完善商家营销技巧,还助力探店网红玩转本地生活服务。 -
阿坝小程序代理
阿坝藏族羌族小程序代理公司有哪些?阿坝藏族羌族小程序代理平台哪个好?阿坝藏族羌族小程序代理商怎么收费,代理政策如何?下面就让即速应用产品经理jisuapp.cn来告诉你吧!