请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

watch的时候css样式

  watch(playing, (newPlaying) => {
    if (!newPlaying.value) {
      syncTransform(cdRef.value, cdImageRef.value)
    }
  })

这一段代码,当playing改变的时候,即暂停的时候,会去记录样式,但是此时由于

const cdCls = computed(() => {
   return playing.value ? 'playing' : ''
})

已经没有了样式,我们怎么去拿到实时的样式😄就是对watch这块的运行时机不是很了解

正在回答 回答被采纳积分+3

1回答

ustbhuangyi 2021-05-31 16:51:38

syncTransform 是通过 DOM API 实时计算的样式。

const cdCls = computed(() => {
   return playing.value ? 'playing' : ''})

这段代码是根据 playing.value 计算出来的样式

我没有搞明白你的具体问题是什么呢?

0 回复 有任何疑惑可以回复我~
  • 提问者 Chaosdanny #1
    此时已经没了playing的样式,相当于图片回到最初的位置,然后通过syncTransform获取到的样式还是最初的位置,我纠结的点就是这里
    回复 有任何疑惑可以回复我~ 2021-05-31 17:08:52
  • ustbhuangyi 回复 提问者 Chaosdanny #2
    不会的,数据变化到 DOM 的改变有一个 Tick 的时间
    回复 有任何疑惑可以回复我~ 2021-06-01 09:41:03
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信