uniApp:上传图片、预览图片

上传图片

uni.chooseImage 方法从本地相册选择图片或使用相机拍照。

参数名类型必填说明
countNumber最多可以选择图片的数量,默认9
sizeTypeArray<String>original 原图,compressed 压缩图,默认二者都有
sourceTypeArray<String>album 从相册选图,camera 使用相机,默认二者都有。如需直接打开相机或相册,请只选择一项。
successFunction成功则返回图片的本地文件路径列表 tempFilePaths
failFunction接口调用失败的回调函数
completeFunction接口调用结束的回调函数(调用成功、失败都会执行)
  • count 值在 H5 平台的表现,基于浏览器本身的规范,只能限制单选/多选,不能限制数量。
  • sourceType 在 H5 端对应 input 的 capture 属性,设置为 [album] 无效,依然可以使用相机。
  • 可以通过用户授权 API 来判断用户是否给应用授权相册或摄像头的访问权限 详情

图片预览

uni.previewImage 可以实现图片预览。

参数名类型必填说明
currentString/Numbercurrent 为当前显示图片的链接/索引值,不填或填写的值无效则为 urls 的第一张。App平台在 1.9.5至1.9.8之间,current为必填。不填会报错
urlsArray<String>需要预览的图片链接列表
indicatorString图片指示器样式,可取值:“default” - 底部圆点指示器; “number” - 顶部数字指示器; “none” - 不显示指示器。
loopBoolean是否可循环预览,默认值为 false
longPressActionsObject长按图片显示操作菜单,如不填默认为 保存相册
successFunction接口调用成功的回调函数
failFunction接口调用失败的回调函数
completeFunction接口调用结束的回调函数(调用成功、失败都会执行)
<template>
	<view>
		<button type="default" @click="chooseImg">上传图片</button>
		<image :src="item" v-for="(item,index) in srcImg" :key='index' @click="previewImg(item)"></image>
	</view>
</template>

<script>
	export default {
		data() {
			return { srcImg: [] }
		},
		methods: {
			// 上传图片
			chooseImg () {
				uni.chooseImage({
					count: 5,
					success: (res)=> {
						this.srcImg = res.tempFilePaths
						console.log(res)
					}
				})
			},
			// 预览图片
			previewImg(current) {
				uni.previewImage({
					current,
					urls: this.srcImg,
					// 图片指示器样式: 小圆点
					indicator: 'default',
					// 循环预览
					loop: true
				})
			}
		}
	}
</script>

image-20211218164022861.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孤安先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值