vue-preview用法详解

本文介绍了Vue-preview移动端图片预览组件,它简单易用,支持滑动换图和手势缩放。记录了1.1.3版本的具体用法,包括安装、导入挂载、组件使用等。还说明了绑定数据源须为特定格式数组,若服务端数据属性不符,需重新添加属性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  Vue-preview是一个非常好用的移动端图片预览的组件,简单易用是它的一大特点,支持滑动换图,支持手势缩放,显示当前时第几张和总共多少张。

  vue-preview1.1.3版本跟之前有了一点变化,现把具体用法记录一下。

  1.安装  

npm i vue-preview -S

  2.在main.js文件中导入该组件,并挂载到Vue身上

import VuePreview from 'vue-preview';
Vue.use(VuePreview);

  3.在自己的组件中使用它

<template>
    <div class="thumbs">
        <vue-preview :slides="thumbsList" class="imgPrev"></vue-preview>
  </div>
</template>
<script>
export default {
    data() {
        return {
            thumbsList: [],
        };
    },
    methods: {
        getThumbsList(){
            this.$ajax({
                method: "get",
                url: "/thumbs/" ,
            }).then(response => {
                var data = response.data
                if (data.Status == 0) {        
                    data.Data.forEach(item => {
                        item.w = 600;   //设置以大图浏览时的宽度
                        item.h = 400;     //设置以大图浏览时的高度
                        item.src = item.img_url;  //大图
                        item.msrc = item.img_url;  //小图
                    });            
                    this.thumbsList = data.Data
                } else {
                    Toast('获取图片信息失败!');
                }
            });
        },
    },  
};
</script>

  4.运行效果如下图

  (1)小图,这个可以根据自己的需要来写下样式

  

  (2)大图,这个是点击上面的小图后,展示的大图。

  

  这里需要说明一下,vue-preview规定,用来绑定的数据源必须是一个数组,数组里的每一项都要是个js对象,该js对象应该形如 {w: 600, h: 500, src: xxxx, msrc: xxxxxx} 

  其中,w是预览时的大图的图片宽度,h属性是预览时的大图的图片高度。src是预览时大图的url,msrc属性是小图的url。

  这几个属性是vue-preview规定死的,必须用这几个属性。

  我这个例子里,服务器发过来的数据,存储图片url的属性是.img_url,跟vue-preview要求的不一样,所以不能直接作为数据源来渲染页面,因此,我们拿到服务端数据后,通过forEach语句,给data重新添加了2个属性,一个是src,一个是msrc。

  

转载于:https://www.cnblogs.com/ldq678/p/10917355.html

参考资源链接:[Vue中新窗口跳转与Vue-router详解](https://wenku.youkuaiyun.com/doc/645e2fa995996c03ac47b8db?utm_source=wenku_answer2doc_content) 在Vue.js项目中,实现新窗口打开链接时,通常需要结合Vue-router来处理路由的动态匹配和解析。首先,应当熟悉Vue-router的基本概念,特别是动态路由和`$router.resolve`方法的使用。 动态路由允许我们在路由路径中定义参数,这些参数在访问时会被传递到路由对象中。例如,在定义路由时可以这样指定动态路径参数: ```javascript { path: '/preview/:examSubjectID/:xuexinID/:recordsID/:constitute/:planID' } ``` 当路由被访问时,对应的参数值会存储在`this.$route.params`对象中,可以在组件内部通过它来获取参数值。 接着,使用`$router.resolve`方法可以解析一个路由配置对象,获得一个包含完整目标URL的`href`属性。这一步是关键,因为它可以让我们获取到最终将要在新窗口中打开的URL。例如: ```javascript const router = this.$router; const route = { name: 'preview', params: { examSubjectID: '123', xuexinID: '456', recordsID: '789', constitute: 'year', planID: 'spring' } }; const resolved = router.resolve(route); const href = resolved.href; window.open(href, '_blank'); ``` 在这个例子中,`resolved`对象包含了`href`属性,它包含了完整的URL地址,随后我们使用`window.open`函数在新窗口中打开这个地址。 需要注意的是,如果路由配置了嵌套路由,那么在解析时也应该考虑到子路由的匹配和参数传递。嵌套路由通常在父路由中通过`children`属性来配置,这样可以在父路由打开时,同时渲染子路由对应的内容。 综上所述,掌握Vue-router的动态路由参数处理和`$router.resolve`方法的使用,可以有效地在Vue应用中实现在新窗口打开链接的需求,同时保持路由参数的正确传递和处理。对于进一步学习和深入了解Vue-router的应用,推荐查阅《Vue中新窗口跳转与Vue-router详解》一文,它将为你提供更详细的实战指南和最佳实践。 参考资源链接:[Vue中新窗口跳转与Vue-router详解](https://wenku.youkuaiyun.com/doc/645e2fa995996c03ac47b8db?utm_source=wenku_answer2doc_content)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值