第一种:viewerjs使用介绍(PC、移动端都兼容)

1、先安装依赖

npm install v-viewer --save

2、main.js内引用并注册调用

//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" }
});

3、代码中使用xxx.vue

<template>
<div class="content">
<viewer :images="imgs">
<img v-for="src in imgs" :src="src.url" :key="src.title">
</viewer>
</div>
</template>
<script>
export default {
data () {
return {
imgs: [
{
url: '../../static/image/aze.jpg',
title: '阿泽'
},
{
url: 'https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=3564877025,796183547&fm=27&gp=0.jpg',
title: '图片2'
}
]
}
},

  methods: {

  pass(){

    var _this = this;

    $.ajax({
      url: "https://zxc.cn/upload/Photo",
      type: "POST",
      data: formData,
      contentType: false,
      processData: false,
      mimeType: "multipart/form-data",
      success: function (res) {
        layer.msg('更新头像'+str+'成功');
        _this.img[0].url = 'https://cxz.cn/nodeJs/photo/' + str;
        _this.img[0].title = str;
      })

  }
}
</script>

注:请求数据成功更改图片路径,像本例子是数组,直接传个对象或者push给他,他数组虽然变了,但是他div绑定的值不会变化,所以我只好对数组的第一个的url、title属性分别赋值,div那绑定的图片数组就会发生改变

但是上面这样写有个缺陷:动态修改图片路径失效,比如我存在数据库的一张图片,然后在创建时(created)想读数据库拿到照片替换以前的照片,发现插件失效,无法放大,所以v-viewer动态改变失效,网上说new Viewer实例然后update更新一下,但是我new Viewer就报错了,感觉是版本关系,但删除版本重新下载个1.2.0还是报错,于是寻找别的解决方案如下:

 <div class="images" id="abcd" v-viewer> <img :src="photo"> </div> 

photo: '../../static/image/aze.jpg',

直接在div上添加v-viewer然后里面包住img,然后修改photo图片的路径就可以解决动态修改图片插件失效

网上还说要用数组来遍历,现在直接放一个字符串即可,因为我只有一张,若多张请采用数组遍历

v-viewer数组循环图片:https://segmentfault.com/a/1190000016584946

上面的v-viewer本博主用的很不错,当然还有其他插件大家也可以去尝试一下

适用于移动端 的图片预览插件 vue-photo-preview

vue2-preview:https://www.jianshu.com/p/37ff607ad2b4

借鉴:https://www.jianshu.com/p/e3350aa1b0d0

vue图片点击放大预览的更多相关文章

  1. 微信小程序图片上传放大预览删除代码

    效果: 一,下面是上传图片的效果 image.js代码: Page({ //选择相册或拍照 data: { imgs: [] }, //上传图片 chooseImg: function (e) { v ...

  2. vue图片点击放大功能

    因项目需求(ui框架element-ui),需要实现图片的点击放大,还要能旋转以及上下切换.当时第一反应,element-ui好像没有这样的组件,就想过自己写,但是那个旋转翻页上下切换感觉有点麻烦,不 ...

  3. 一款基于jQuery可放大预览的图片滑块插件

    今天给大家分享一款基于jQuery可放大预览的图片滑块插件.这款jQuery焦点图插件的特点是可以横向左右滑动图片,并且点击图片可以进行放大预览,唯一的缺陷是这款焦点图并不能循环切换,如果你有较好的J ...

  4. 微信小程序点击图片放大预览

    微信小程序点击图片放大预览使用到 wx.previewImage 接口,可以放大.上/下一张 上代码 wxml代码 <view class='content-img' wx:if="{ ...

  5. jQuery Lightbox图片放大预览

    简介:jQuery Lightbox图片放大预览代码是一款可以在用户点击页面中的小图片时,将该图片的高清版本以Lightbox的方式放大显示在页面的中间,提高用户的体验度. 效果展示 http://h ...

  6. 微信小程序图片放大预览

    需求:当点击图片时,当前图片放大预览,且可以左右滑动 实现方式:使用微信小程序图片预览接口 我们可以看到api需要两个参数,分别通过下面的data-list和data-src来传到js中 wxml代码 ...

  7. layui 实现图片上传和预览

    [学习笔记] 图片不自动上传并在表单提交时再上传,看代码. 附上表单页面 前台实现 <#--图片名--><input id="fileName" type=&qu ...

  8. DevExpress控件使用系列--ASPxUploadControl(图片上传及预览)

        1.控件功能     列表控件展示数据.弹框控件执行编辑操作.Tab控件实现多标签编辑操官方说明 2.官方示例       2.1 ASPxImage                http: ...

  9. 项目总结07:JS图片的上传预览和表单提交(FileReader()方法)

    JS图片的上传预览和表单提交(FileReader()方法) 一开始没有搞明白下面这块代码的,今天有时间简单整理下 核心点:FileReader()方法 以下是代码(以JSP文件为例) <!DO ...

随机推荐

  1. maven:Fatal error compiling: 无效的目标发行版: 1.8.0_45 -> [Help 1]

    使用mvn clean install命令的时候出现如下的错误: Failed to execute goal org.apache.maven.plugins:maven-compiler-plug ...

  2. C# 表达式树Lambda扩展(四)

    一.前言 本来计算这篇文章在后面需要运用的时候写的,但是既然写到表达式的扩展呢,就一起写完吧. 看到这个标题就有一种疑问,Lambda表达式本来就是表达式树,还需要怎么扩展?那就看看下面的内容,你就知 ...

  3. FreeSql (二十五)延时加载

    FreeSql 支持导航属性延时加载,即当我们需要用到的时候才进行加载(读取),支持1对1.多对1.1对多.多对多关系的导航属性. 当我们希望浏览某条订单信息的时候,才显示其对应的订单详细记录时,我们 ...

  4. Winform中实现ZedGraph的多条Y轴(附源码下载)

    场景 Winforn中设置ZedGraph曲线图的属性.坐标轴属性.刻度属性: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...

  5. ES6新增常见特性

    一:声明属性let const var let const 区别 1.var声明变量会发生变量提升,let.const不会发生变量提升 2.var允许重复声明变量,let不可以 3.const声明变量 ...

  6. Vue学习之vue中的v-if,v-show,v-for

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. BOM之本地数据存储

    JavaScript中本地存储数据常用的,且兼容性较好的有两种方式,cookie和Storage.另外还可以使用location.hash临时存储少量关键信息. 一    location.hash ...

  8. 首次GitHub千星项目提交维护成功 留念

    现在有点激动,可能有混乱的地方.请大家见谅. 一直觉得千星项目,对我来说是一个遥不可及的地方.没想到第一次在GitHub上 提交Pull Request 就成功了,并且是一个千星项目. 虽然 只是提出 ...

  9. 手把手教你用最简便的方法免费安装SSL

    原文链接:小枫同学的个人博客 随时IT的发展,它几乎涵盖了世界发展中的任何一方面,几乎都和计算机挂钩,也有好多小伙伴想开一个自己的网站,分享一些知识,分享一些心情等等.但是随着IT的发展,网络安全也越 ...

  10. spring基础学习01

    spring基础 Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用 IOC控制反转 把创建对象和维护对象之间的关系权利 ...