-
-
Notifications
You must be signed in to change notification settings - Fork 8.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: stricter type condition for EventHandlers
#6855
Conversation
Will this fix also be applied for Vue |
This comment was marked as spam.
This comment was marked as spam.
@acidjazz We may need cautious to check if the change leads to some regressions, so please be patient. :) Downgrading |
@@ -1301,7 +1301,7 @@ export interface Events { | |||
} | |||
|
|||
type EventHandlers<E> = { | |||
[K in keyof E]?: E[K] extends Function ? E[K] : (payload: E[K]) => void | |||
[K in keyof E]?: E[K] extends (...args: any) => any ? E[K] : (payload: E[K]) => void |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is IMO a good change anyways as there is even a eslint rule to warn using Function
at all
FYI the issue has been fixed in |
@sodatea I have 18.11.3 but the error is there. |
Issue: vuejs/language-tools#1985
With
@types/node
version >= 18.8.1,MouseEvent extends Function
is true, but with version <= 18.8.0MouseEvent extends Function
is false.Close #6899