小程序?qū)崿F(xiàn)上傳視頻功能
更新時間:2020年08月18日 11:18:37 作者:wild_guiqulaixi
這篇文章主要為大家詳細介紹了小程序?qū)崿F(xiàn)上傳視頻功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了小程序?qū)崿F(xiàn)上傳視頻功能的具體代碼,供大家參考,具體內(nèi)容如下
.js文件
// miniprogram/pages/message/messageForm/messageForm.js Page({ /** * 頁面的初始數(shù)據(jù) */ data: { webServer: 'https://xxxx.xxx.com', src: '', webviewshow: 'hide', webviewurl: '', gid: "", uid: '', duration: '', height: '', size: '', width: '', ThumbPath: false, videoshow: 'hide' }, /** * 生命周期函數(shù)--監(jiān)聽頁面加載 */ onLoad: function (options) { this.setData({ gid: options.gid, uid: options.uid }) }, chooseVideo: function () { var that = this wx.chooseVideo({ success: function (res) { that.setData({ src: res.tempFilePath, }) } }) }, getLocalVideo: function () { var that = this; var session_key = wx.getStorageSync('session_key'); wx.chooseVideo({ maxDuration: 10, success: function (res1) { // 這個就是最終拍攝視頻的臨時路徑了 that.setData({ src: res1.tempFilePath, duration: res1.duration, height: res1.height, size: res1.size, width: res1.width, videoshow: 'thumb' }) wx.showToast({ title: '選擇成功', icon: 'succes', duration: 2000, mask: true }) }, fail: function () { console.error("獲取本地視頻時出錯"); } }) }, uploadvideo: function () { var that = this; wx.showLoading({ title: '上傳中', }) var src = this.data.src; if (src) { that.setData({ ThumbPath: true }) } wx.uploadFile({ url: that.data.webServer + 'xxxxxx',//服務(wù)器接 formData: { 'uid': that.data.uid, 'gid': that.data.gid, 'duration': that.data.duration, 'height': that.data.height, 'size': that.data.size, 'width': that.data.width }, method: 'POST',//這句話好像可以不用 filePath: src, header: { 'content-type': 'multipart/form-data' }, name: 'files',//服務(wù)器定義的Key值 success: function (e) { wx.hideLoading(); if (typeof e.data != 'object') { e.data = e.data.replace(/\ufeff/g, "");//重點 var data = JSON.parse(e.data); if (data.status == 1) { wx.showToast({ title: '上傳成功', icon: 'succes', duration: 1000, mask: true }) setTimeout(function () { that.backHtml(); }, 1000) } else if (data.status == 2) { wx.showToast({ title: '文件過大', icon: 'succes', duration: 1000, mask: true }) } } }, fail: function () { wx.showToast({ title: '上傳失敗', icon: 'succes', duration: 1000, mask: true }) } }) }, backHtml: function () { var that = this; wx.reLaunch({ url: '/pages/index/index?gid=' + this.data.gid }) }, /** * 生命周期函數(shù)--監(jiān)聽頁面初次渲染完成 */ onReady: function () { }, /** * 生命周期函數(shù)--監(jiān)聽頁面顯示 */ onShow: function () { }, /** * 生命周期函數(shù)--監(jiān)聽頁面隱藏 */ onHide: function () { }, /** * 生命周期函數(shù)--監(jiān)聽頁面卸載 */ onUnload: function () { }, /** * 頁面相關(guān)事件處理函數(shù)--監(jiān)聽用戶下拉動作 */ onPullDownRefresh: function () { }, /** * 頁面上拉觸底事件的處理函數(shù) */ onReachBottom: function () { }, /** * 用戶點擊右上角分享 */ onShareAppMessage: function () { } })
.wxml
<view class='contbox'> <view class='thumbbox'> <video class="{{videoshow}}" src="{{src}}"></video> </view> <!-- 提交 --> <button bindtap='getLocalVideo' class="btn2" type="primary" form-type='submit'>選擇視頻</button> <button type="default" class="btn2" bindtap="chooseVideo" bindtap='uploadvideo' type="warn" form-type='reset'>上傳視頻</button> </view>
.wxss
.thumbbox { display: flex; justify-content: center; align-items: center; }
為大家推薦現(xiàn)在關(guān)注度比較高的微信小程序教程一篇:《微信小程序開發(fā)教程》小編為大家精心整理的,希望喜歡。
更多精彩內(nèi)容請參考專題《ajax上傳技術(shù)匯總》,《javascript文件上傳操作匯總》和《jQuery上傳操作匯總》進行學(xué)習(xí)。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
layui當點擊文本框時彈出選擇框,顯示選擇內(nèi)容的例子
今天小編就為大家分享一篇layui當點擊文本框時彈出選擇框,顯示選擇內(nèi)容的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09JS庫 Highlightjs 添加代碼行號的實現(xiàn)代碼
Highlightjs是一款優(yōu)秀的代碼高亮Js組件,可以很方便地對各種語言編寫的代碼添加語法高亮樣式。本文重點給大家介紹Highlightjs 添加代碼行號的實現(xiàn)代碼,需要的朋友參考下吧2017-09-09