此功能解决了什么问题?
目前,#4866中引入的鼠标按钮修饰符为left
、middle
、right
,分别对应$event.button
值0
、1
、2
。但这仅适用于“默认”的右手布局。在左手模式(即在操作系统中切换按钮)下,右键具有0
值,而左键具有2
值。此外,一些右手用户可能反转或重新Map鼠标按钮。使用这些名称作为鼠标按钮的代码可能会导致不熟悉“默认”右手模式的开发人员之间的困惑和错误。
提议的API看起来如何?
保留left
和right
作为已弃用,并添加main
和secondary
作为它们的别名。
3条答案
按热度按时间js81xvg61#
我目前正在处理这个问题。修饰符应该有哪些名称?
left
和right
的 "mouse" 修饰符已经与键盘修饰符left
和right
(v-on:keydown.right and left seems to be broken in Vue 2.2.1 #5046, fix mouse modifier override the keycode ( Fixed #5046 ) #5060)冲突,为了避免将来出现类似的命名问题,我们是否应该包含一些与指针设备/鼠标相关的修饰符,如ptrMain
?引入两个词的修饰符似乎不是一个好主意,因为涉及到大小写相关的问题。left
):main
/primary
/ 你的建议middle
):aux
(但可能会引起混淆,因为auxclick
is fired for all the mouse buttons except the primary one)/ 你的建议right
):secondary
/ 你的建议之前的名称
left
、right
、middle
当然保留了,但会带有警告信息以表示已弃用。gev0vcfq2#
如果使用
primary
和secondary
,那么tertiary
将是第三个(通常是中间的)按钮的一致名称。j0pj023g3#
讨论有点转向了拉取请求,Evan同意了命名。