• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Vue Transition实现类原生组件跳转过渡动画的示例

vue 搞代码 4年前 (2022-01-08) 6次浏览 已收录 0个评论

本篇文章主要介绍了Vue Transition实现类原生组件跳转过渡动画的示例,具有一定的参考价值,有兴趣的可以了解一下

最近学习了Vue Transition的用法,感觉这个地方知识点挺多的,而且很重要,所以,今天添加一点小笔记

官方文档:https://cn.vuejs.org/v2/guide/transitions.html

演示地址:http://www.coderlife.com (请在移动端查看,PC端查看请打开移动端调试模式)

前言

看了挺多Vue的UI框架都不带过渡动画,今天心血来潮,就把自己平时用的动效抽离出来。可直接通过脚手架init模版配合其他UI框架使用,不需要另外进行配置。

原理

模版中使用了Vue提供的封装组件 transition,配合CSS类名在 enter/leave 的六种不同的状态过渡中切换。

对于这些在 enter/leave 过渡中切换的类名,v- 是这些类名的前缀。使用 可以重置前缀,比如 v-enter 替换为 my-transition-enter

重写跳转函数

 // 根据具体的跳转类型更改跳转属性值,执行不同的动画 const nextDirection = (direction) => { let el = document.getElementById('app') if (el) el.setAttribute('transition-direction', direction) } router['_push'] = router['push'] // 重写路由跳转方法,设置跳转类型后跳转 router.forward = router['push'] = (target) => { nextDirection('forward') setTimeou<a style="color:transparent">来@源gao*daima.com搞@代#码网</a>t(() => { router['_push'](target) }) } // 重写路由返回方法,设置跳转类型后跳转到上一页 router.back = (target) => { nextDirection('back') if (target) { setTimeout(() => { router['_push'](target) }) } history.go(-1) } 

How to use

 # init template vue init CoderLQChou/v-transition-template my-transition-app # cd project cd my-transition-app # install dependencies npm install # serve with hot reload at localhost:8080 npm run dev # build for production with minification npm run build 

仓库地址:https://github.com/CoderLQChou/vue-transition-template

以上就是Vue Transition实现类原生组件跳转过渡动画的示例的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Vue Transition实现类原生组件跳转过渡动画的示例

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址