Skip to content

Commit

Permalink
fix: remove native: events from realListeners
Browse files Browse the repository at this point in the history
  • Loading branch information
kingyue737 authored and Justineo committed Apr 22, 2024
1 parent 5cdff0b commit feb4f03
Showing 1 changed file with 11 additions and 13 deletions.
24 changes: 11 additions & 13 deletions src/ECharts.ts
Original file line number Diff line number Diff line change
Expand Up @@ -115,10 +115,8 @@ export default defineComponent({
instance.group = props.group;
}

let realListeners = listeners;
if (!realListeners) {
realListeners = {};

const realListeners: Record<string, any> = {};
if (!listeners) {
Object.keys(attrs)
.filter(key => isOn(key))
.forEach(key => {
Expand All @@ -145,15 +143,15 @@ export default defineComponent({
realListeners[event] = attrs[key];
});
} else {
// Vue 2 native DOM events
Object.keys(realListeners).forEach(key => {
const index = key.indexOf("native:");
if (index === 0 || index === 1 || index === 2) {
// native:click -> click
// ~native:click -> ~click
// ~!native:click -> ~!click (eg: .capture.once)
nativeEventAttrs[key.slice(0, index) + key.slice(index + 7)] =
realListeners[key];
// native:click -> click
// ~native:click -> ~click
// &~!native:click -> &~!click
const regex = /(^&?~?!?)native:/;
Object.keys(listeners).forEach(key => {
if (regex.test(key)) {
nativeEventAttrs[key.replace(regex, "$1")] = listeners[key];
} else {
realListeners[key] = listeners[key];
}
});
}
Expand Down

0 comments on commit feb4f03

Please sign in to comment.