vue-router的go(-1)可以存在两个动画吗

来源:10-10 与 Native 交互-自动登录(自动登录对接)

wambaoxiaoyiyi

2020-07-13

现在我像课程里的一样在App.vue里弄的返回动画,但是go(-1)不能携带参数,无法指定第二种后退动画。想问下老师能不能实现多种后退动画

写回答

2回答

Sunday

2020-07-16

你好:

如果是这个问题的话,那种重点应该是思路。

试想以下,思路应该是什么?

首先明确以下目的。我们的目的是,当执行后退操作的时候,可以根据需求,展示不同类型的后退动画。


那么为了这个目的,我们需要有:

1、执行后退操作,这个可以通过 go(-1) 实现

2、根据需要,展示不同类型的后退动画。这个需要让“动画执行者”知道我应该执行什么动画。


所谓的难点就在第二步。

那么怎么做呢?你可以参考下,你上一个问题,我提到的 “第三方”的思路。我们可以不可以,再 vuex 中声明一个变量,这个变量用来表示当前应该执行哪一种后退动画。

再执行 go(-1) 之前,我们修改该变量,在“动画执行者”执行动画之前,我们根据该变量判断应该执行哪一种后退动画。


你上面的回答,也可以实现该效果。是没有问题的。

0
4
Sunday
回复
wambaoxiaoyiyi
vuex 里面有 moudle 的概念 ,可以用来分割模块。你可以参考以下:https://vuex.vuejs.org/zh/guide/modules.html
2020-07-19
共4条回复

wambaoxiaoyiyi

提问者

2020-07-13

    目前解决方法是router中绑定一个goBack方法

VueRouter.prototype.goBack = function () {

  this.isBack = true

  window.history.go(-1)

}

在App.vue文件watch $router时,判断this.$router.isBack的值来决定播放哪个动画


0
0

混合开发入门 Vue结合Android/iOS开发仿京东项目App

流行的混合开发实战入门,前端和原生开发同学不容错过

1108 学习 · 448 问题

查看课程