vuejs3 - vue3中事件的自动案例转换
问题描述
我有一个发出多个事件的 Vue3 组件。我想在一个专用的回调对象中传递回调,如下所示:
// template section
<!-- emits event-a and event-b in kebap-case -->
<my-component v-on="myCallbacks" />
// script section
const myCallbacks={
'event-a': function() { // kebap-case does *not* work
...
},
eventA: function() { // camel-case works !
...
},
eventB: function() {
...
}
}
文档指出,在 Vue3 中,与 Vue2 不同,有一个自动事件名称转换(显然是 kebap-case)。
为什么我不能在回调中使用预期的 kebap-case?我是否错过了一个更合适的设计模式,可以替换这样的回调对象并且仍然简洁?回调对象的名称转换是标准行为还是会发生变化?它是否记录在某处?
我几乎没有在文档中找到关于在v-on
没有事件说明符的情况下使用的任何内容(即v-on="callback"
,而不是v-on:event-a="eventA" v-on:event-b="eventB"
)。
//更新 在Vue2 文档和Vue3 文档中,他们提到这被称为“对象语法”——然而,没有写任何关于大小写转换的内容。
<!-- object syntax (2.4.0+) -->
<button v-on="{ mousedown: doThis, mouseup: doThat }"></button>
解决方案
推荐阅读
- c++ - 在 C++ 中更新 const 变量值
- f# - 如何取消 `ResponseSocket` 服务器?
- docker - Docker 安装 WordPress 报错 docker-compose.yml
- ios - 使用 FSCalendar 仅显示该月提及范围内的日期
- listview - 在 Flutter 中从子卡重新加载 ListView
- firebase - React Native 代码中的 Firebase 电话身份验证错误
- java - Spring boot 中请求体的默认类型是什么
- objective-c - 当本月 1 日在周五/周六 30-31 天时,我正在尝试更改约束
- powershell - 将 Vmware 性能指标保存到每个 VM 的单个 CSV 文件中
- javascript - React useEffect on function props