我把一个 ref 对象 focus = ref<number>(0)
绑定到 radio-button-group
<radio-button-group v-model="focus">
然后给 focus 添加一个 watch ,如果 focus 改变(也就是说我点击了一个不同的按钮),那么就执行A
watch(focus, () => {
A(focus' value)
})
我想在点击之前已经点击过的按钮的时候,也执行A
但是如果点击之前已经点击过的按钮,因为 focus 没有变,所以不会触发 watch
如果我给每个 button 都添加这样一个 click event
if(clickedSameButton)
then A(focus' value)
但是if(clickedSameButton
这个该怎么实现呢?
如果给所有的 button 都添加这样一个 click event
if(clickedButton)
then A(focus' value)
这是没用的,因为,在进入这个 click event 的时候,focus 的值,无法保证是点击修改后的,还是点击之前的。原因是 js 的异步执行。
比如我本来是按钮 1 ,现在点击按钮 2 ,在
if(clickedButton)
then A(focus' value`focus' value`)
这个函数里面,focus' value
到底是 1 还是 2 呢?无法确定
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.