在手機拍攝視頻的時候,存在2個情況,手機橫這和手機豎着。如果是橫着的情況下,我們豎着拿手機觀看模式,包括抖音,快手,他們的解決方案都是上下出現黑色變寬,對視頻進行等比例壓縮。老鐵我也參考這個來完成。另外如果用戶爲登錄的情況下,想進入我的需要登錄纔可以,這個也需要頁面通過緩存中獲取用戶信息來進行控制。源碼:https://github.com/limingios/wxProgram.git 中No.15
詳情頁面橫豎屏的控制
如果視頻的寬度大於高度,video的填充模式就修改爲正常的情況。不進行填充
var videoUtils = require('../../utils/videoUtils.js')const app = getApp() Page({ data: { cover:'cover', videoContext:"", videoInfo:{}, videId:'', src:'' }, showSearch:function(){ wx.navigateTo({ url: '../videoSearch/videoSearch', }) }, onLoad:function(params){ var me = this; me.videoContext = wx.createVideoContext('myVideo', me); var videoInfo = JSON.parse(params.videoInfo); var videoWidth = videoInfo.videoWidth; var videoHeight = videoInfo.videoHeight; var cover = 'cover'; if (videoWidth > videoHeight){ cover = ''; } me.setData({ videId: videoInfo.id, src: app.serverUrl + videoInfo.videoPath, videoInfo: videoInfo, cover: cover }) }, showIndex:function(){ wx.redirectTo({ url: '../index/index', }) }, onShow:function(){ var me = this; me.videoContext.play(); }, onHide:function(){ var me = this; me.videoContext.pause(); }, upload:function(){ videoUtils.uploadVideo(); }, showMine: function () { var me = this; var userInfo = app.getGlobalUserInfo(); if (userInfo.id == '' || userInfo.id == undefined){ wx.navigateTo({ url: '../userLogin/userLogin', }) }else{ wx.navigateTo({ url: '../mine/mine', }) } }, })
詳情跳轉到個人頁面
判斷緩存中是否存在用戶信息,存在跳轉到個人信息頁面,不存在,跳轉到登錄頁面
PS:小程序一般的開發思路就是儘量前端能辦的少麻煩後端,減少交互。這樣用戶體驗就上去了。