微信小程序上传图片,视频及预览
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自定义属性 这样知道我点的是哪个参数
随机推荐
- Visual Studio 代码快捷键
目录 1.常用快捷键 2.快速生成代码 3.自定义代码片段 参考: https://blog.csdn.net/qq_32452623/article/details/53838393 https:/ ...
- DWARF 中的 Debug Info 格式
本周花了几天的时间来研究怎么在 breakpad [1, 2] 中加入打印函数参数的功能,以期其产生的 callstack 更具可读性,方便定位崩溃原因. 现代 ELF 中的调试信息基本是以 DWAR ...
- Android 追加写入文件的三种方法
一.使用FileOutputStream 使用FileOutputStream,在构造FileOutputStream时,把第二个参数设为true public static void method1 ...
- struts2框架学习笔记7:struts2标签
三大标签: 1.JSP:脚本,为了替代servlet,已过时 2.JSTL:标准标签库(core.format.sql.xml),还未淘汰的只有core库 3.Struts2标签库:由Struts2开 ...
- iOS开发手记-仿QQ音乐播放器动态歌词的实现
最近朋友想做个音乐App,让我帮忙参考下.其中歌词动态滚动的效果,正好我之前也没做过,顺便学习一下,先来个预览效果. 实现思路 歌词常见的就是lrc歌词了,我们这里也是通过解析lrc歌词文件来获取其播 ...
- [原]Windows Azure开发之Linux虚拟机
Windows Azure是微软的云服务集合,用来提供云在线服务所需要的操作系统与基础存储与管理的平台,是微软的云计算的核心组成组件之一.其中windows azure提供的最重要的一项服务就是虚 ...
- javascript中的LHS和RHS
最近在拜读<你不知道的javascript>,接触到一个比较陌生的概念,LHS查询和RHS查询. 简单的一句话来讲,当变量出现在赋值操作符的左侧时进行LHS查询,出现在右侧时进行RHS查询 ...
- MySQL Workbench导出Model提示['ERROR 1064 (42000): You have an error in your SQL syntax....syntax to use near 'VISIBLE']
CREATE TABLE IF NOT EXISTS `pihealth`.`warning_events` ( `wid` INT NOT NULL AUTO_INCREMENT, `wtime` ...
- ffmpeg 视频实现各种特效
直接上命令: //渐入i in.mp4 -vf fade=in:0:90 out.mp4 //黑白 i in.mp4 -vf lu ...
- python基础学习笔记 - 备忘
基础中的基础 Python标识符 命名规则: Python标识符区分大小写. 可以包括英文.数字以及下划线,但不能以数字开头. 以下划线开头的标识符是有特殊意义的: a) 以单下划线开 ...