swiper跳转指定slides,其他路由跳转swiper指定slides
swiper跳转指定slides
当然分页器,可以实现这个功能,但是如果想在菜单栏实现就需要别的方法了。
Template
<ul><li @click="toslide(0)">首页</li><li @click="toslide(1)">文章</li><li @click="toslide(2)">友链</li><li @click="toslide(3)">关于</li></ul>
使用点击方法传递slides的索引,
注意:loop模式下的索引是对不上的,还没研究过
Methods
// slide跳转toslide (num) {this.$refs.mySwiper.swiper.slideTo(num, 1000, true)// 切换到第一个slide,速度为1秒},
我的siper-slide是组件化的方法初始化的,所以需要调用swiper的实例slideTo实现索引跳转
正常的可以到 Swiper官网查看 https://www.swiper.com.cn/api/methods/417.html,一样可以实现slides跳转
其他路由跳转指定slides
这个比较难搞,研究了我好久,需要考虑到swiper的初始化问题
索引传参的方法,我使用了sessionStorage的方法来存储
其他页面的跳转回swipers页面,并保存值
其他页面的Template
<ul><li @click="toslide(0)">首页</li><li @click="toslide(1)">文章</li><li @click="toslide(2)">友链</li><li @click="toslide(3)">关于</li></ul>
其他页面的Methods
toHome (num) {window.sessionStorage.setItem('slide', num)this.$router.push('home')}
Swiper的初始化问题
我将Vue的一些生命周期执行打印了出来,发现swiper的初始化,比其他的都要晚,
意味着获取到索引但是却执行不了swiper的跳转,因为swiper还没有初始化完成。
本人又是小白,swiper官网找了好久也没找到swiper初始化后可以执行的事件
最后只能使用延时执行,延时执行属于异步,同步执行完才到异步,所以没问题啦
JS
data(){return{ slideId: 0
}
},
created(){this.slidesId = window.sessionStorage.getItem('slide') //获取索引this.delay(this.slidesId) //执行延时方法,并传递索引
},
methods: {// 其他页面跳转指定slidesdelay () {// 值得注意的是这里在setTimeout函数如果使用到了this,必须在函数外定义一个变量来暂存this。如果不需要使用this,则不用定义。var self = thissetTimeout(function () {console.log('延时了执行')self.$refs.mySwiper.swiper.slideTo(self.slidesId, 1000, true)}, 500)// 设置回索引0,刷新后created也只会跳转首页window.sessionStorage.setItem('slide', 0)}
}
设置了0.5秒的延时,效果来说,并不影响体验,网上没找到类似的方法,记录一下。
出于解决问题的思路去做,并没有考虑太多方面的问题,大神们有更好的方法也可以分享出来
swiper跳转指定slides,其他路由跳转swiper指定slides相关推荐
- vue 函数 路由跳转_vue中通过路由跳转的三种方式
router-view 实现路由内容的地方,引入组件时写到需要引入的地方 需要注意的是,使用vue-router控制路由则必须router-view作为容器. 通过路由跳转的三种方式 1.router ...
- vue2.0 点击跳转传参--vue路由跳转传参数
vue中路由跳转传参数有多种,自己常用的是下面的几种 通过router-link进行跳转 通过编程导航进行路由跳转 1. router-link [html] view plaincopy <r ...
- vue地址栏输入路由跳转到首页_Vue路由跳转到新页面时 默认在页面最底部 而不是最顶部 的解决...
php截取字符串函数 public function sub_string($str, $len, $charset="utf-8") { if( !is_numeric($len ...
- react实现路由跳转拦截功能(导航守卫)
react实现路由跳转拦截功能(导航守卫) 背景 方法1:通过Prompt组件实现react路由跳转拦截功能 Prompt组件介绍 Prompt组件示例 自定义Prompt组件的提示弹窗 方法2:通过 ...
- flutter中的路由跳转
在前面的基本路由和命名路由中,都演示了如何进行路由跳转,并且在路由跳转以后,可以借用系统自带的按钮就行返回上一级,当然了,也可以自定义按钮返回上一级. 返回上一级 在前面的例子中,当从Home.dar ...
- Angular中使用JS实现路由跳转、动态路由传值、get方式传值
场景 Angular介绍.安装Angular Cli.创建Angular项目入门教程: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/detail ...
- vue路由跳转以及路由传参接收
路由跳转 1.声明式路由跳转 (不带参数) 通过router-link标签进行跳转,使用name或者path都可以,在dom结构中会被渲染成a标签 注意:router-link中链接如果是'/'开始就 ...
- VUE—跳转到该父路由下的指定子路由(图文详情)
VUE-跳转到该父路由下的指定子路由 第一步:在index.js里配置路由,父路由不写name,指定子路由写父路由的name,其余子路由路由前不加'/' {path: '/Layout',compon ...
- 2种方式解决vue路由跳转未匹配相应路由避免出现空白页面或者指定404页面
1.路由全局守卫 在做项目的时候,遇到需要做路由跳转,但当用户输入错误url地址,或是其它非法url路由地址,我们或许会想到跳转至404页面.不管你有没有写一个404页面,当出现未匹配路由都需重新指定 ...
最新文章
- 初中计算机基础知识教程考试,2017年职称计算机考试基础知识教程详解(三十一)...
- 不朽传奇-云计算技术背后的那些天才程序员:Qemu的作者法布里斯贝拉
- 局域网内连接MySQL
- JDBC学习笔记(7)——事务的隔离级别批量处理
- 带你了解WDR-GaussDB(DWS) 的性能监测报告
- java spring 过滤器_java – 如何在spring-security中的另一个过滤器之前添加过滤器?...
- 无线Wifi模块AP和STA工作模式详解
- Basic serial port listening application
- ajax的结果处理,jQuery ajax返回数据的后续处理
- 微型计算机机安装硬盘教程,台式机械硬盘怎么安装?机械硬盘安装图解教程(SATA固态可参考)...
- STM32实现薄膜压力传感器数据采集(标准库和HAL库实现)
- cad转excel插件c2e_cad表格转换器2016
- css3顺时,CSS3 - 顺时针旋转比逆时针
- 本地IP与网络IP的区别与查询方式
- hdu4322 candy 费用流
- 【Spring Cloud 基础设施搭建系列】Spring Cloud Demo项目 将微服务运行在Docker上
- Python标准库time
- 2022元宇宙十大 “闪光时刻”
- 别再骂百度难用了,问题是你根本就不会用搜索引擎!
- AMD显卡如何设置高性能?
热门文章
- 13种最为荒谬的编程语言
- 家用人体体重秤方案规格书
- 怎样实现在单片机上跑LINUX系统,简述Linux如何应用在嵌入式单片机上
- POE交换机和普通交换机的区别介绍
- linux 10 -Bash Shell编程
- 实践中如何优化MySQL
- Youtube推荐系统论文-《Deep Neural Networks for YouTube Recommendations》-简单总结
- 电脑台式计算机描述不可用,【计算机描述不可用】计算机描述不可用步骤_计算机分级不可用-系统城...
- 为提高 SDLC 安全,GitHub 发布新功能|GitHub Universe 2022
- 华为 、锐捷、新华三、睿易网络设备怎么选