情不知从何起,一往而情深
排名
6
文章
199
粉丝
4
评论
3
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术

uni-app 微信小程序 实现图片预览

3596人阅读 2023/9/18 19:35 总访问:1110376 评论:0 收藏:0 手机
分类: 前端

基本用法:

在uniapp中,我们可以使用uni.previewImage()API对图片进行预览,具体使用方法如下:

  1. uni.previewImage({
  2. urls: ['https://example.com/image1.jpg', 'https://example.com/image2.jpg'],
  3. current: 0
  4. });

其中,urls参数为一个字符串数组,表示需要预览的图片数组;current参数为一个数字,表示当前选中的图片在数组中的索引值,从0开始计数。

在调用uni.previewImage()方法后,uniapp会显示系统自带的图片预览界面,用户可以滑动查看多张图片,也可以缩放图片进行查看。

在vue3中的简单示例:

  1. <script setup lang="ts">
  2. import { ref, reactive } from 'vue'
  3. const state = reactive({
  4. imgList: ['https://img1.baidu.com/it/u=2749857666,4031842358&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=773',
  5. 'https://img2.baidu.com/it/u=2583282997,4052280191&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=1081',
  6. 'https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fsafe-img.xhscdn.com%2Fbw1%2F546d1162-c6cb-4001-9110-fe1e05ac4e65%3FimageView2%2F2%2Fw%2F1080%2Fformat%2Fjpg&refer=http%3A%2F%2Fsafe-img.xhscdn.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=auto?sec=1696840654&t=54e2db45921da0a2c48a7b88a16890a0',
  7. 'https://img1.baidu.com/it/u=4223515363,158474147&fm=253&fmt=auto&app=138&f=JPEG?w=889&h=500',
  8. 'https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fsafe-img.xhscdn.com%2Fbw1%2Fcb5924af-c6a9-44de-b4f5-ab11f0123223%3FimageView2%2F2%2Fw%2F1080%2Fformat%2Fjpg&refer=http%3A%2F%2Fsafe-img.xhscdn.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=auto?sec=1696840654&t=0f7fdaea9376f89222845bcc7f0cee10'
  9. ]
  10. })
  11. const previewImg = (index = 0) => {
  12. uni.previewImage({
  13. urls: state.imgList,
  14. current: index
  15. });
  16. }
  17. </script>

循环绑定图片的时候使用


这里的item.imgJson是一个图片id集合的json字符串,所以需要转化成json对象。GetImgUrl是一个我们系统里边封装的根据图片id获取图片地址的方法

  1. <image class="imgitem" v-for="(img, index) in JSON.parse(item.imgJson)" :key="index" mode="aspectFill"
  2. :src="GetImgUrl(img)" @tap="previewImg(item.imgJson,index)"/>
  3. <view class="" style="flex: 1" />

图片预览方法:

  1. // 图片预览
  2. const previewImg = (imgListJson: any, index = 0) => {
  3. let imgIdList = JSON.parse(imgListJson)
  4. let imgList = [] as any
  5. // 根据图片id获取图片的浏览地址
  6. for (let index = 0; index < imgIdList.length; index++) {
  7. const element = imgIdList[index];
  8. imgList.push(GetImgUrl(element))
  9. }
  10. uni.previewImage({
  11. urls: imgList,
  12. current: index
  13. });
  14. }

欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739。有需要软件开发,或者学习软件技术的朋友可以和我联系~(Q:815170684)

评价

uni-app开始时间与结束时间(结束时间大于开始时间)picker编写

利用uni-app官网里面picker插件代码当点击开始时间后结束时间要大于选择后的开始时间,点击结束时间后开始时间要小于开始时...

uni-app用法与html标签的变化

以前是html标签,比如,现在是小程序组件,比如。那么标签和组件有什么区别,不都是用尖括号包围起来一段英文吗?其实标签...

uni-app无法导入插件

点击网页中右上角的插件导入,可以打开项目,但是就是无法导入插件。是因为,要登录!hbuilder里边也要登录才行,他这个应...

使用uni-app的云端一体插件

初次使用uni-app的云端一体插件步骤还是有点多,也有一些坑,在这里把使用过程记录一下。 一:先下载需要的插件在插件右上...

uni-app中list插件图标问题

如图:他使用uni-icons实现的如果只有text就不会有图标有时候贴的文档不是太完善,还是要下一个完整的插件来对比一下

uni-app发起请求

代码如下:uni.request({ url:&#39;接口地址&#39;, success:(result)=&gt;{ my.lists=result.data; } })注意你的...

uni-app官方文档

https://uniapp.dcloud.io/

uni-app运行与调试

上边有菜单,可以运行到浏览器,也可以运行到内置浏览器运行到内置浏览器的效果:

uni-app引入外部资源,引入外网样式

很简单代码如下:&lt;style&gt; @import&#39;http://image.tnblog.net/amazeui.min.css&#39;; &lt;/style&gt; &lt;st...

uni-app设置起始页

很简单,在pages.json里边配置即可。

uni-app页面无法跳转问题

首先检查一下有没有在pages里边配置没有配置不行的哦或者看看你的跳转方式对不对,如果跳转的是底部菜单,但是你用的是uni....

uni-app 删除失败 setting denied access to....

删除的时候如果文件夹下面还有页面,这样直接删除文件夹是会报错的:删除失败 setting denied access to....这种情况就直接...

uni-app中引入外部js

可以使用代码如下:varscript=document.createElement(&#39;script&#39;); script.src=&quot;http://image.tnblog.net/jqu...

uni-app dom操作

比如引入外部js需要用到的dom操作:varscript=document.createElement(&#39;script&#39;); script.src=&quot;http://image....

uni-app使用web-view引入页面

代码如下:&lt;template&gt; &lt;viewclass=&quot;h5-html&quot;&gt; &lt;web-view:webview-styles=&quot;webviewStyl...

uni-app真机调试

很简单只要手机开启了usb调试,然后hbuilderx会自动获取到手机的然后运行到手机即可华为手机开启use调试:一直点击版本号进...