Vue基于iview table展示图片实现点击放大


Posted in Javascript onAugust 05, 2020

首先先安装依赖:

npm install v-viewer --save

然后全局引入,我这边是在main.js里面操作写的:

import Viewer from 'v-viewer'
import 'viewerjs/dist/viewer.css'

然后注册下:

Vue.use(Viewer)
Viewer.setDefaults({
  Options: { 'inline': true, 'button': true, 'navbar': true, 'title': true, 'toolbar': true, 'tooltip': true, 'movable': true, 'zoomable': true, 'rotatable': true, 'scalable': true, 'transition': true, 'fullscreen': true, 'keyboard': true, 'url': 'data-source' }
})

使用的一个demo就是:

<viewer :images="tupians">
   <i-col span="4" v-for="item in tupians">
     <div class="detailed">
      <img :src="item.img" alt="">
     </div>
   </i-col>
</viewer>

其中item.img其实就是一个路径。

在回到iview表格中,

需要以

h('xxxx', {
        props: {
          trigger: 'hover',
          placement: 'top',
          content: '二维码'
        }
      }, [
      ])

这种格式渲染出来,第一个参数是标签,第二参数是标签里面可以含props(vue的v-bind),也可以包含属性。第三个参数是数组,表示子标签。子标签也是这种格式的,以此递归下去。

所以改写成这种格式的,在本人项目中的一个demo如下,就可以实现在表格中点击图片进行放大展示:

{
  title: '二维码',
  align: 'center',
  render: (h, params) => {
    console.log('h, param', params);
    let devicesArr = [];
    let photo = [];
    photo.push('/erweima/'+params.row.pt_number+'.png');
    devicesArr.push(
      h('Tooltip', {
        props: {
          trigger: 'hover',
          placement: 'top',
          content: '二维码'
        }
      }, [
        h('viewer', {
          props:{
            images:photo
          }
        }, [
          h('img', {
            attrs: {
              src:photo[0],
              style: 'width: 22px;margin-right:5px'
            },
          })
        ])
      ])
    );
    return h('div', devicesArr);
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jValidate 基于jQuery的表单验证插件
Dec 12 Javascript
JavaScript事件委托技术实例分析
Feb 06 Javascript
浅谈Cookie的生命周期问题
Aug 02 Javascript
javascript之with的使用(阿里云、淘宝使用代码分析)
Oct 11 Javascript
js拖拽功能实现代码解析
Nov 28 Javascript
自学实现angularjs依赖注入
Dec 20 Javascript
微信小程序 页面之间传参实例详解
Jan 13 Javascript
vue+vuex+json-seiver实现数据展示+分页功能
Apr 11 Javascript
vue 设置 input 为不可以编辑的实现方法
Sep 19 Javascript
node.js中stream流中可读流和可写流的实现与使用方法实例分析
Feb 13 Javascript
Vue实现鼠标经过文字显示悬浮框效果的示例代码
Oct 14 Javascript
Javascript数组及类数组相关原理详解
Oct 29 Javascript
vue相同路由跳转强制刷新该路由组件操作
Aug 05 #Javascript
解决vue路由name同名,路由重复的问题
Aug 05 #Javascript
解决vue项目input输入框双向绑定数据不实时生效问题
Aug 05 #Javascript
Vue 同步异步存值取值实现案例
Aug 05 #Javascript
详解vue路由
Aug 05 #Javascript
解决vue使用vant下拉框van-dropdown-item 绑定title值不变问题
Aug 05 #Javascript
vant 自定义 van-dropdown-item的用法
Aug 05 #Javascript
You might like
PHP反转字符串函数strrev()函数的用法
2012/02/04 PHP
关于更改Zend Studio/Eclipse代码风格主题的介绍
2013/06/23 PHP
几行代码轻松搞定jquery实现flash8类似的连接效果
2007/05/03 Javascript
在线编辑器中换行与内容自动提取
2009/04/24 Javascript
检测jQuery.js是否已加载的判断代码
2011/05/20 Javascript
基于javascript实现简单的抽奖系统
2020/04/15 Javascript
几句话带你理解JS中的this、闭包、原型链
2016/09/26 Javascript
前端分页功能的实现以及原理(jQuery)
2017/01/22 Javascript
js实现百度登录框鼠标拖拽效果
2017/03/07 Javascript
Extjs 中的 Treepanel 实现菜单级联选中效果及实例代码
2017/08/22 Javascript
VUE路由动态加载实例代码讲解
2019/08/26 Javascript
Webpack按需加载打包chunk命名的方法
2019/09/22 Javascript
js实现3D照片墙效果
2019/10/28 Javascript
js+css3实现简单时钟特效
2020/09/13 Javascript
[32:36]完美世界DOTA2联赛PWL S3 LBZS vs CPG 第二场 12.12
2020/12/16 DOTA
Python网络爬虫项目:内容提取器的定义
2016/10/25 Python
在Python中执行系统命令的方法示例详解
2017/09/14 Python
利用python 更新ssh 远程代码 操作远程服务器的实现代码
2018/02/08 Python
详谈Pandas中iloc和loc以及ix的区别
2018/06/08 Python
解决python3捕获cx_oracle抛出的异常错误问题
2018/10/18 Python
dataframe 按条件替换某一列中的值方法
2019/01/29 Python
详解使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件
2019/08/23 Python
Python3.8对可迭代解包的改进及用法详解
2019/10/15 Python
利用Python代码实现一键抠背景功能
2019/12/29 Python
python 爬取疫情数据的源码
2020/02/09 Python
Python编程快速上手——疯狂填词程序实现方法分析
2020/02/29 Python
canvas 绘图时位置偏离的问题解决
2020/09/16 HTML / CSS
拉飞逸官网:Lafayette 148 New York
2020/07/15 全球购物
美国购买韩国护肤和美容产品网站:Althea Korea
2020/11/16 全球购物
服装厂厂长职责
2013/12/16 职场文书
重阳节登山活动方案
2014/02/03 职场文书
消防安全责任书
2014/04/14 职场文书
环保倡议书300字
2014/05/15 职场文书
法制教育演讲稿
2014/09/10 职场文书
2015年度对口支援工作总结
2015/07/22 职场文书
创业计划书之旅游网站
2019/09/06 职场文书