当前位置: 首页 > wzjs >正文

北京上云科技网站建设什么是网站收录

北京上云科技网站建设,什么是网站收录,公司装修费会计分录,微网站开发素材🌟 前言 欢迎来到我的技术小宇宙!🌌 这里不仅是我记录技术点滴的后花园,也是我分享学习心得和项目经验的乐园。📚 无论你是技术小白还是资深大牛,这里总有一些内容能触动你的好奇心。🔍 &#x…

🌟 前言

欢迎来到我的技术小宇宙!🌌 这里不仅是我记录技术点滴的后花园,也是我分享学习心得和项目经验的乐园。📚 无论你是技术小白还是资深大牛,这里总有一些内容能触动你的好奇心。🔍

  • 🤖 洛可可白:个人主页

  • 🔥 个人专栏:✅前端技术 ✅后端技术

  • 🏠 个人博客:洛可可白博客

  • 🐱 代码获取:bestwishes0203

  • 📷 封面壁纸:洛可可白wallpaper

在这里插入图片描述

Vue页面过渡动画

  • Ruoyi-Vue拆解:优雅实现Vue页面过渡动画
    • Vue过渡系统基础
    • 完整实现代码
    • 关键实现解析
      • 1. 过渡组件配置
      • 2. CSS过渡动画
      • 3. 导航优化
    • 进阶技巧
      • 1. 动态过渡效果
      • 2. 集成第三方动画库
    • 性能优化建议

Ruoyi-Vue拆解:优雅实现Vue页面过渡动画

在现代Web应用中,流畅的页面过渡动画能显著提升用户体验。Vue.js提供了强大的过渡系统,让我们能够轻松实现各种页面切换效果。本文将通过一个完整的示例,带你了解如何实现类似Ruoyi-vue框架中的滑入滑出动画效果。

Vue过渡系统基础

Vue的<transition>组件是实现过渡效果的核心。当元素插入或移除时,Vue会自动应用CSS过渡类名:

  1. v-enter-from / v-leave-from: 进入/离开的起始状态
  2. v-enter-active / v-leave-active: 进入/离开的活动状态
  3. v-enter-to / v-leave-to: 进入/离开的结束状态

完整实现代码

在这里插入图片描述

<template><div id="app"><div class="app-container"><nav class="sidebar"><div class="logo">Vue Transition</div><ul class="nav-menu"><li class="nav-item" :class="{ active: $route.path === '/' }"@click="navigateTo('/')"><span class="nav-icon">🏠</span><span class="nav-text">首页</span></li><li class="nav-item" :class="{ active: $route.path === '/about' }"@click="navigateTo('/about')"><span class="nav-icon">😊</span><span class="nav-text">关于</span></li></ul></nav><main class="content-area"><transition name="slide-fade" mode="out-in"><router-view class="page-content" /></transition></main></div></div>
</template><script>
export default {methods: {navigateTo(path) {if (this.$route.path !== path) {this.$router.push(path)}}}
}
</script><style>
/* 基础样式重置 */
* {margin: 0;padding: 0;box-sizing: border-box;font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}#app {height: 100vh;background: #f5f7fa;
}.app-container {display: flex;height: 100%;
}/* 侧边栏样式 */
.sidebar {width: 240px;background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);color: white;padding: 20px 0;box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1);
}.logo {font-size: 1.5rem;font-weight: bold;padding: 0 20px 20px;margin-bottom: 20px;border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}.nav-menu {list-style: none;
}.nav-item {display: flex;align-items: center;padding: 12px 20px;cursor: pointer;transition: all 0.3s ease;border-left: 3px solid transparent;
}.nav-item:hover {background: rgba(255, 255, 255, 0.1);
}.nav-item.active {background: rgba(255, 255, 255, 0.2);border-left: 3px solid white;
}.nav-icon {margin-right: 10px;font-size: 1.1rem;
}.nav-text {font-size: 0.95rem;
}/* 内容区域样式 */
.content-area {flex: 1;padding: 30px;overflow-y: auto;
}.page-content {background: white;border-radius: 8px;padding: 30px;box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);min-height: calc(100% - 60px);
}/* 过渡动画效果 */
.slide-fade-enter-active {transition: all 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}.slide-fade-leave-active {transition: all 0.3s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}.slide-fade-enter-from {opacity: 0;transform: translateX(30px) scale(0.98);
}.slide-fade-leave-to {opacity: 0;transform: translateX(-30px) scale(0.98);
}/* 响应式设计 */
@media (max-width: 768px) {.app-container {flex-direction: column;}.sidebar {width: 100%;height: auto;}.content-area {padding: 20px;}.page-content {padding: 20px;min-height: auto;}
}
</style>

关键实现解析

1. 过渡组件配置

<transition name="slide-fade" mode="out-in"><router-view class="page-content" />
</transition>
  • name="slide-fade": 定义过渡类名前缀
  • mode="out-in": 确保当前元素先离开,新元素再进入

2. CSS过渡动画

.slide-fade-enter-active {transition: all 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}.slide-fade-leave-active {transition: all 0.3s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}.slide-fade-enter-from {opacity: 0;transform: translateX(30px) scale(0.98);
}.slide-fade-leave-to {opacity: 0;transform: translateX(-30px) scale(0.98);
}

这里使用了cubic-bezier曲线创建弹性效果,同时结合了平移和缩放动画,使过渡更加生动。

3. 导航优化

navigateTo(path) {if (this.$route.path !== path) {this.$router.push(path)}
}

添加了路由判断,避免重复导航触发不必要的动画。

进阶技巧

1. 动态过渡效果

可以根据路由深度应用不同的过渡方向:

watch: {$route(to, from) {const toDepth = to.path.split('/').lengthconst fromDepth = from.path.split('/').lengththis.transitionName = toDepth < fromDepth ? 'slide-right' : 'slide-left'}
}

2. 集成第三方动画库

如使用animate.css

npm install animate.css

然后在组件中使用:

<transitionenter-active-class="animate__animated animate__fadeInLeft"leave-active-class="animate__animated animate__fadeOutRight"mode="out-in"
><router-view></router-view>
</transition>

性能优化建议

  1. 尽量使用CSS transforms和opacity属性,它们不会触发重排
  2. 避免在过渡中修改width/height等昂贵属性
  3. 合理设置过渡时长,通常在300-500ms之间
  4. 使用will-change属性提示浏览器优化

如果对你有帮助,点赞👍、收藏💖、关注🔔是我更新的动力!👋🌟🚀


文章转载自:

http://n2wSPn36.ntwxt.cn
http://DuegFHW2.ntwxt.cn
http://XiJmXyEC.ntwxt.cn
http://fWxoRdHg.ntwxt.cn
http://prWZ92uO.ntwxt.cn
http://Kf9W8Yi3.ntwxt.cn
http://J6aK6sAm.ntwxt.cn
http://3IvnZ0JR.ntwxt.cn
http://iojHyzdb.ntwxt.cn
http://JzkGVPUS.ntwxt.cn
http://iZRazWbD.ntwxt.cn
http://n3N8p2MS.ntwxt.cn
http://iY1BcXOx.ntwxt.cn
http://Rm12a0qp.ntwxt.cn
http://nQdr007P.ntwxt.cn
http://DPYKHxbr.ntwxt.cn
http://RwY0zeNb.ntwxt.cn
http://yEfwWEi0.ntwxt.cn
http://o91owUMj.ntwxt.cn
http://7xoMK8OM.ntwxt.cn
http://nOVQpkOd.ntwxt.cn
http://UyqNzwyq.ntwxt.cn
http://hT2UFKfX.ntwxt.cn
http://Qmsq2MW1.ntwxt.cn
http://1S1QK5SK.ntwxt.cn
http://DO8rbXjV.ntwxt.cn
http://ClW47WAV.ntwxt.cn
http://Nl74BcRe.ntwxt.cn
http://EFl0Mi6q.ntwxt.cn
http://kCMChThk.ntwxt.cn
http://www.dtcms.com/wzjs/739218.html

相关文章:

  • 承德网站建设wordpress更换域名后台登不进去
  • 个人博客网站建设预算陕西做网站公司有哪些
  • 企业网站如何建设报告滁州做网站的公司
  • 没有备案的网站能否帮网上支付福州云建站
  • 高端网站建设开发制作网站语言
  • 移动端响应式网站怎么做个人网站seo
  • 做问卷的网站网站标题权重吗
  • 牟平建设企业网站天津商业网站建设
  • 西安技术网站建设免费设计logo图标生成器
  • 如何利用NAS做网站wordpress 图片论坛
  • 请写出网站建设前期需要做的准备阿里邮箱注册
  • php英文网站源码门户网站是不是新媒体
  • 网站认证打款怎么做分录制作网页教程
  • 平顶山建设局网站zencart中文网站
  • 厦门网站建设培训费用WordPress碎语
  • 在百度上做网站多少钱网络规划与设计思维导图
  • 登录手机网站模板htmlwordpress 插件交互
  • 石龙网站设计效果好的网站建
  • 那个网站可以做域名跳转的开办网络公司
  • 一个网站的页头大概做多大如何自己做解析网站
  • 石狮网站定制数据服务网站开发
  • 同里做网站手机百度app
  • 北太平庄网站建设培训校园网站建设简报
  • iis配置网站php自己如何做微信小程序
  • html做网站实战教程wordpress高级教程下载
  • 建网站用用asp做的网站如何运行
  • 网站数据流程重庆建设厂招工信息网站
  • 关于网页制作的网站网站开发项目比赛
  • 大型网站服务器价格网站式小程序
  • 兰州哪家网站做推广效果好iis7.5发布网站