微信小程序上传图片,视频及预览
wxml
<!-- 图片预览 -->
<view class='preview-warp' wx:if="{{urls}}">
<image src='{{urls}}' />
</view>
<view class="prew_video" hidden="{{chooesVideo==''}}">
<video bindfullscreenchange="bindVideoScreenChange" src="{{chooesVideo}}" ></video>
</view> <!-- 按钮组 -->
<view class='upimg' bindtap='chooseImg'>上传图片</view>
<view class='upvideo' bindtap='chooseVideo'>上传视频</view>
wxss
/* 预览 */
.preview-warp{
display: flex;
align-items: center; /*垂直居中*/
justify-content: center; /*居中对齐*/
position: relative;
background-color: #fff;
}
.prew_video{
display: flex;
align-items: center; /*垂直居中*/
justify-content: center; /*居中对齐*/
position: relative;
background-color: #fff;
}
.prew_video[hidden]{
display: none;
}
.prew_video .play{
width: 48rpx;
height: 48rpx;
} /* 上传按钮组 */
.upimg{
width: 49%;
height: 80rpx;
line-height: 80rpx;
font-size: 30rpx;
float: left;
background: #41C7DB;
text-align: center;
border: 1px solid #000;
/* border-left: 1px solid #000; */
}
.upvideo{
width: 49.5%;
height: 80rpx;
line-height: 80rpx;
font-size: 30rpx;
float: left;
text-align: center;
border: 1px solid #000;
background: #fff
}
js
//index.js
var app = getApp()
var count = 0;
Page({
data: {
chooesVideo:'', //上传视频地址
tipHide: false,
chooseTypeHide: true,
}, /**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
console.log(options.status)
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function (res) {
this.videoContext = wx.createVideoContext('prew_video');
},/**
* 上传图片
*/
chooseImg:function() {
let that = this
wx.chooseImage({
count: 1, // 默认9
sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
success: function (res) {
console.log(res)
var tempFilePaths = res.tempFilePaths
that.data.images = tempFilePaths
// 多图片
// that.data.urls = that.data.urls.concat(tempFilePaths)
// 单图片
that.data.urls = tempFilePaths[0]
that.setData({
images: tempFilePaths[0],
urls: that.data.urls
}) }
})
}, /**
* 上传视频
*/
chooseVideo:function(){
let that = this
wx.chooseVideo({
sourceType: ['album', 'camera'],
maxDuration: 60,
camera: 'back',
success: function (res) {
that.setData({
chooesVideo: res.tempFilePath
})
}
})
}, /**
* 全屏改变
*/
bindVideoScreenChange: function (e) {
var status = e.detail.fullScreen;
var play = {
playVideo: false
}
if (status) {
play.playVideo = true;
} else {
this.videoContext.pause();
}
this.setData(play);
} })
微信小程序上传图片,视频及预览的更多相关文章
- 微信小程序(组件demo)以及预览方法:(小程序交流群:604788754)
1. 获取微信小程序的 AppID 登录 https://mp.weixin.qq.com ,就可以在网站的"设置"-"开发者设置"中,查看到微信小程序的 Ap ...
- 微信小程序开发之图片预览
实现图片的展示和大图预览 使用wx.previewImage(OBJECT)来实现 OBJECT参数说明: 参数 类型 必填 说明 current String 否 当前显示图片的链接,不填则默认为 ...
- 微信小程序——网盘图片预览
微信小程序图片预览提供了一个wx.previewImage接口,如下图: 现在我需要对网盘文件里的图片预览,但是网盘从后台返回的数据是各种类型的文件,如下图所示: 那么我们需要解决2个问题: 1.从这 ...
- 微信小程序:点击预览图片
在开发微信小程序时,开发人员会参考着小程序api来开发小程序,但有的时候根据情况不同很容易出现bug,以下是我在开发小程序时出现的各种bug,在开发时有需要预览图片. 1.xml <view c ...
- 微信小程序图片选择,预览和删除
这里均用的是小程序原生api 废话不多说直接上栗子: <view class="addImv"> <!--这个是已经选好的图片--> <view wx ...
- 微信小程序:点击预览大图功能
点击预览大图功能 1. 给轮播图swiper-item绑定点击事件 2. 预览功能的本质是调用了小程序的api:previewImage 微信公众号----文档----开发----API----媒体- ...
- 微信小程序实现图片放大预览效果
可以直接用微信程序自己的api很方便的实现 核心方法 wx.previewImage: 直接上代码, wxml: <!--pages/prewpicture/prew.wxml--> &l ...
- 解决微信小程序wepy真机预览跟本地表现不一样,数据变化了视图没变化
当时搜了很多相关问题都没找到相似的 只看到有这个相似的描述wepy在onLoad里修改data-object的值页面不渲染 ,通过setData解决的. 但是这个还不是根本的解决办法,有些地方用set ...
- 微信小程序点击图片预览-wx.previewImage
<view class='imgList'> <view class='imgList-li' wx:for='{{imgArr}}'> <image class='im ...
- 微信小程序-点击图片预览
拿接口 有封装 封装查看另外的博文 点击动作 WXHTML 注意 data-xxxx自定义属性 这样知道我点的是哪个参数
随机推荐
- 背水一战 Windows 10 (64) - 控件(WebView): 加载指定 HttpMethod 的请求, 自定义请求的 http header, app 与 js 的交互
[源码下载] 背水一战 Windows 10 (64) - 控件(WebView): 加载指定 HttpMethod 的请求, 自定义请求的 http header, app 与 js 的交互 作者: ...
- 《深入理解JAVA虚拟机》——学习笔记
JVM内存模型以及分区 JVM内存分为: 1.方法区:线程共享的区域,存储已经被虚拟机加载的类信息.常量.静态变量.即时编译器编译后的代码等数据 2.堆:线程共享的区域,存储对象实例,以及给数组分配的 ...
- MongoDB 用法入门(windows)①
概述 大家对数据库肯定不陌生,肯定也有很多人用过MySQL,但是在用MySQL的时候各种建表,写表之间的关联让人非常头疼. MongoDB也是一种数据库,但是它不是用表,而是用集合来装数据的,我对这种 ...
- Git 常用命令备份
继上次保存了git 多个key共存配置(https://www.cnblogs.com/xiaochangwei/p/9155195.html)后,今天把常见的git命令备份下(最近我的云笔记账号经常 ...
- Liferay7 BPM门户开发之5: Activiti和Spring集成
参考文档: https://github.com/jbarrez/spring-boot-with-activiti-examplehttps://github.com/sxyx2008/spring ...
- ffmpeg 实现多宫格效果,视频拼接合成
通过FFmpeg建立画布,以多宫格方式展现 一下为执行命令 -re -i 1.mp4 -re -i 2.mp4 -re -i 3.mp4 -re -i 4.mp4 -filter_complex &q ...
- The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar报错
缺少jstl依赖解析xml文件,报错jaspException 添加依赖如下: <dependency> <groupId>jstl</grou ...
- Anaconda3下安装Anaconda2
一.下载软件 下载Anaconda Python3.6版本和Anaconda Python2.7版本.下载地址:https://www.anaconda.com/download/ 下载需要FQ,也可 ...
- jq版本的checkbox有radio的单选效果(可得到value值)
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>复 ...
- CentOS 安装 kafka
首先确保JDK已正确安装并设置好环境变量 安装Zookeeper 到官网下载: https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/ zooke ...