IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> VUE切换页面过度动画及页面缓存问题 -> 正文阅读

[游戏开发]VUE切换页面过度动画及页面缓存问题

参考文章:Vue中切换页面时的过渡动画_zhangxu0215的专栏-CSDN博客

根据此作者写的文章修改了一些样式符合我的系统搞定了过度动画,但是会出现一些动画左右错乱的现象,原因是因为meta.index大小不一,所以应该自行根据小窗口的List进行排序即可。

watch: {
    //使用watch 监听$router的变化
    $route(to, from) {
      let toIndex = 0;
      let fromIndex = 0;
      this.$store.state.tagsView.visitedViews.forEach((item,index)=>{
        if(item.path == to.path){
          toIndex = index;
        }else if(item.path == from.path){
          fromIndex = index;
        }
      })
      //如果to的索引值为0,不添加任何动画;如果to索引大于from索引,判断为前进状态,反之则为后退状态,(原为to.meta.index)
      if (toIndex < fromIndex) {
        this.transitionName = "slide-right";
      } else {
        this.transitionName = "slide-left";
      }
    }
  },

每个系统中的小窗口列表在store都不太一样,自己查找一下哈,本人的是this.$store.state.tagsView.visitedViews。

然后是和缓存之间有冲突,如果使用v-if="$route.meta.keepAlive",会报错,所以我们改用include的方式。

<transition :name="transitionName">
   <keep-alive include="keepAlive">
     <router-view></router-view>
   </keep-alive>
</transition>

每个需要缓存的页面加上name即可。只要有name就被缓存了

export default {
  //写此name即为开启缓存
  name:'keepAlive',
  data () {
    return {

    }
  }
}

被缓存的页面还会出现不刷新的现象,我们需要的是查询参数被缓存,但是列表需要刷新所以要用beforeRouteEnter进行操作。

  methods: {
      getInfo () {
          //列表查询接口
      }
  },
  beforeRouteEnter (to, from, next) {
    next(vm =>{
      vm.getInfo();
    });
  },
  created(){
    //不需要开始加载了,改用路由进入加载
    //this.getInfo();
  }

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章      下一篇文章      查看所有文章
加:2021-09-11 19:08:27  更:2021-09-11 19:09:18 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/17 12:54:19-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码