账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    vue-transtion 过渡动画不走钩子 2
    41
    0

    想要实现这从左往右出现到屏幕的过渡效果,实现不了,且不走transtion 钩子函数,不知道怎么修改。
    代码如下: 手动粘贴 未整理格式。
    首页:

    <template>
    <div class="hello">
        <van-cell title="单元格" is-link to="/shopCart" />
        <van-button  type="primary" @click="jump">跳转</van-button>
     </div>
    </template>
    
    <script>
    export default {
    methods:{jump () {
          this.$router.push('/shopCart')
        }}}
       </script> 

    shopCart: 其中beforeEnter enter 都不走 但是按照官网的方式是好使的

    <template>
    <transition
        name="slide"
        v-on:before-enter="beforeEnter"
        v-on:enter="enter"
      >
      <div class="con">
    <button@click="$router.goBack()">返回</button>
    </div>
      </transition>
    </template>
    <script>
    export default {
    methods:(){
     beforeEnter: function (el) {
          console.log(el)
        },
        enter () {
          alert(1)
        }
        }
        }
        </script>
    <style>
    .slide-enter-active,
    .slide-leave-active {
      transition: all .5s;
    }
    
    .slide-enter,
    .slide-leave-to {
      transform: translate3d(100%, 0, 0);
    }
    .con{
      position: absolute;
      z-index: 100;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background-color: #f7f7f7;
    }
    </style>
    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 11 元积分
        全部回答
    • 0
    • 丢什么不丢个性。 普通会员 1楼

      Vue Transition 的过渡动画默认是走钩子的,这意味着当你触发过渡动画时,它会立即应用过渡动画。但是,如果你想要在过渡动画结束后才触发钩子,你可以设置 useEffect。以下是一个例子:

      js export default { methods: { handleTransitionEnd() { console.log('过渡动画结束后触发钩子'); } }, mounted() { this.handleTransitionEnd(); } };

      在这个例子中,我们设置了一个 handleTransitionEnd 方法,在过渡动画结束后,它会打印出一条消息。

      另一种方法是在 mounted 生命周期钩子中使用过渡动画:

      js export default { mounted() { this.$nextTick(() => { this.handleTransitionEnd(); }); }, methods: { handleTransitionEnd() { console.log('过渡动画结束后触发钩子'); } } };

      在这个例子中,我们使用 $nextTick 方法在组件挂载后立即调用 handleTransitionEnd 方法。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部