andywer / andywer/typed-emitter

Type issue with listener parameters

未关闭
#41 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
JavaScript
星标
285
派生
29
PR 合并指标
30 天内没有已合并 PR

描述

I have an variable called "event" and it is type is `keyof Events`
```ts
// I have an variable called "event" and it's type is `keyof Events`
emitter.on(event, (...args) => {
// It says args is any[] but we know that it is parameter of any of Events
})
```

To fix this we can change type definitions.
Current type definition is:
```ts
on (event: E, listener: Events[E]): this
```
but if we change it with
```ts
on(event: E, listener: (...args: Parameters) => ReturnType): this
```
the problem gets solved, now TypeScript knows args is any of the Events

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。