Skip to content

Commit 7a1fc4b

Browse files
authored
Merge pull request #994 from LzhengH/fix/vueify-event
fix(omi-vueify): event listener
2 parents 67a40bc + 123307d commit 7a1fc4b

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

packages/omi-vueify/src/index.ts

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,25 @@ export function omiVueify(
4242
// 添加事件监听
4343
omiEvents.forEach((omiEvent) => {
4444
const vueEvent = camelToKebab(omiEvent);
45-
// 仅处理kebab-case风格
46-
if (!isKebabString(vueEvent)) return;
45+
// 仅处理 kebab-case/单词 风格
46+
if (!isKebabString(vueEvent) && omiEvent !== vueEvent) return;
4747

4848
const handler = (e: Event) => {
4949
emit(vueEvent, e);
5050
};
5151
eventHandlers.set(omiEvent, handler);
5252
elRef.value?.addEventListener(omiEvent, handler);
53-
})
53+
});
54+
// 处理函数参数传入
55+
Object.entries(formatAttrs.value).forEach(([key, value]) => {
56+
if (typeof value === 'function') {
57+
// 函数参数通过props而非attrs传入
58+
// @ts-ignore
59+
elRef.value[kebabToCamel(key)] = value;
60+
// @ts-ignore
61+
delete formatAttrs.value[key];
62+
}
63+
});
5464
})
5565

5666
// 清理事件监听

0 commit comments

Comments
 (0)