improvements for non-experimental decorator types

未关闭
#56,426 4 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
5/5
预计耗时
一周以上
新手友好度
35/100
Issue 类型
功能
描述清晰度
基本清楚
活跃度
停滞
技术栈
typescript
领域
compilers

调研方向

未指定文件或测试。首先定位现有的 DecoratorContext 声明以及它涵盖的 decorator 类型定义,然后将提议的 DecoratedValue 成员与当前类型系统进行比较。完成的标准是添加一个达成共识的 catch-all 值类型,同时不改变生成的 JavaScript 或现有行为。

由索引模型根据 Issue 内容生成。

描述

Awaiting More Feedback Domain: Decorators Suggestion
🔍 Search Terms

github typescript decorator value type

✅ Viability Checklist
⭐ Suggestion

This is a request to add a new utility type because TypeScript added one for decorator contexts but not for values

The DecoratorContext type is nice for catching all context types:

function decorator(value: unknown, context: DecoratorContext) { // optionally use a more specific type.
  // ...
}

But for value, there is not a good catch-all type.

📃 Motivating Example

If we have a context catch all type, why not also have a value catch all type, f.e. something like :

export type DecoratedValue = Constructor | Function | ClassAccessorDecoratorTarget<object, unknown> | undefined
💻 Use Cases
  1. What do you want to use this for? decorators whose code handles any value type
  2. What shortcomings exist with current approaches? we have to make the catchall for value ourselves, but we don't have to do that for context
  3. What workarounds are you using in the meantime? I make my own catchall (not that big a deal, but neither would making DecoratorContext myself be
主要语言
Go
星标
111k
派生
14.4k
平均合并
1 天 19 小时
30 天内合并 PR
117

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

microsoft/TypeScript 的其他 Issue

查看 microsoft/TypeScript 的全部 Issue

相似的 Issue

更多 Go Issue

把新 issue 发到你的邮箱

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