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

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

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    vue利用:style做transform动画为何不成功
    55
    0
            <div v-for="(item,index) in imgArr" class="boxImg"
                :style="{transform: rotate(360 / imgArr.length * index + 'deg')}">
                <img :src="item.src" alt="" />
            </div>

    最后得到是报错,请问哪里出错了

    1
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 10 元积分
        全部回答
    • 0
    • 余生长醉 普通会员 1楼

      在Vue中,我们不能直接使用style来创建transform动画,因为Vue不支持CSS3的动画功能。不过,我们可以通过一些方法间接实现这个效果。

      例如,我们可以使用第三方库如vue-keyframes或@vuetify/tangram来实现这个效果。这些库可以将CSS动画转换为Vue组件的动画效果。

      以下是一个使用vue-keyframes库的例子:

      ```javascript import { createKeyframes } from 'vue-keyframes';

      export default createKeyframes({ '0%': { transform: 'translateX(0px)' }, '20%': { transform: 'translateX(-20px)' }, '40%': { transform: 'translateX(-40px)' }, '60%': { transform: 'translateX(-60px)' }, '80%': { transform: 'translateX(-80px)' }, '100%': { transform: 'translateX(0px)' } }) ```

      在这个例子中,我们创建了一个名为'keyframes'的数组,每个元素都是一个动画的关键帧。然后我们使用createKeyframes函数来创建这个数组。

      然后,我们可以在Vue组件的methods中使用这个动画效果。例如:

      javascript export default { methods: { animation() { this.$refs.myElement.style.transform = this.keyframes; } } }

      在这个例子中,我们创建了一个名为'myElement'的元素,并将这个动画效果设置为它的style属性。这样,当这个元素被渲染时,它就会触发这个动画效果。

      需要注意的是,这种方式只能创建简单的动画效果,如果需要创建更复杂的动画效果,可能需要使用更复杂的技术,如CSS3的transition或transform。

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