javascript - vue 如何实现组件与组件之间的transition过渡?
怪我咯
怪我咯 2017-04-11 11:23:55
[JavaScript讨论组]

两个组件:nav导航栏组件,panel内容组件

需求:

  • nav组件第二层导航的显示/隐藏(过渡效果),已实现。

  • nav与panel组件的过渡效果, 未实现。

说明:

  • nav组件内部的DOM变化使得整个页面高度发生了变化,从而使nav下面的组件的offsetTop的变化都在瞬间,显得很突兀

  • Vue文档中说明了触发transition需要v-if,v-for,或者DOM跟新。在这里是通过组件内部DOM的变化来触发组件与组件之间的过渡,感觉也应该是可以的啊,但是我没实现成功,是我理解的有问题吗?

Vue.component('navigation', {
    template: '\
      
\

\ 导航第一行\ \

\ \

\ 导航第二行\

\
\
\ ', data() { return { second: false, }; }, }) Vue.component('panel', { template: '
内容
', }) new Vue ({ el: '#app', })
p {
  text-align: center;
  color: #fff;
}

.nav .floor {
  background: #ec8442;
  height: 30px;
}

.nav .floor button {
  right:10px;
  position: absolute;
}

.panel {
  height: 100px;
  background: #42c1ec;
  padding-top: 20px;
}

.floor-2 {
  transition: all 0.8s
}

.nav-slide-enter, .nav-slide-leave-active {
  opacity: 0;
  transform: translateY(-30px);
}

demo

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(0)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号