打字稿装饰器参数

宽的

我想了解Typescript装饰器的不同参数是什么。

function myDecorator(target) {
  // do something with 'target' ...
}

在上面的示例中,我知道target表示装饰器附加到的函数/类,但是装饰器的其他参数是什么,它们的含义是顺序,我还想获得指向指定此参数的官方文档的链接。

提前致谢。

托马斯·萨布利克(Thomas Sablik)

装饰者期望一个参数,它装饰的目标以及根据目标类型的更多参数,例如

方法装饰器

方法装饰器的表达式将在运行时作为函数调用,并带有以下三个参数:

  • 静态成员的类的构造函数或实例成员的类的原型。
  • 成员的名称。
  • 成员的属性描述符。

您可以在TypeScript装饰上找到所有装饰器类型的完整列表

  • 类装饰器

    • 仅目标阶层
  • 方法装饰器

    • 静态成员的类的构造函数或实例成员的类的原型,
    • 成员的名字,
    • 成员的属性描述符
  • 存取器装饰器

    • 静态成员的类的构造函数或实例成员的类的原型。
    • 成员的名称。
    • 成员的属性描述符。
  • 物业装饰工

    • 静态成员的类的构造函数或实例成员的类的原型。
    • 成员的名称。
  • 参数装饰器

    • 静态成员的类的构造函数或实例成员的类的原型。
    • 成员的名称。
    • 函数的参数列表中参数的序号索引。

此外:

如果要自定义如何将装饰器应用于声明,则可以编写一个装饰器工厂。Decorator Factory是一个简单的函数,它返回装饰者在运行时将调用的表达式。

[ TypeScript装饰器]

您可以根据需要使用参数创建装饰器工厂。没有限制或指定。

TypeScript文档中的示例。

装饰器:

function sealed(target) {
  // do something with 'target' ...
}

适用于

@sealed x

装饰厂:

function color(value: string) {
  // this is the decorator factory
  return function (target) {
    // this is the decorator
    // do something with 'target' and 'value'...
  };
}

申请为

@color('blue') x

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

打字稿装饰器混乱

来自分类Dev

打字稿:装饰构造函数的公共参数?

来自分类Dev

打字稿装饰设置器功能

来自分类Dev

打字稿:使用装饰器时的类型推断

来自分类Dev

无法使用装饰器运行打字稿代码

来自分类Dev

打字稿装饰器和此上下文

来自分类Dev

从类装饰器中访问注入的服务?打字稿/ NestJS

来自分类Dev

使用打字稿难以理解装饰器输出

来自分类Dev

打字稿方法装饰器:这是未定义的

来自分类Dev

打字稿无法从打字稿装饰器访问属性类型。(目标是:{})

来自分类Dev

打字稿使参数可选

来自分类Dev

打字稿函数参数

来自分类Dev

打字稿装饰:如何强制声明?

来自分类Dev

在Storybook 5.2中使用装饰器包装故事-打字稿/角度

来自分类Dev

如何在打字稿中重载vue组件装饰器?

来自分类Dev

用于抽象 E2E 测试 biolerplate 的打字稿装饰器

来自分类Dev

打字稿动态链接参数

来自分类Dev

打字稿动态链接参数

来自分类Dev

打字稿多类型参数

来自分类Dev

覆盖函数参数-打字稿

来自分类Dev

打字稿多类型参数

来自分类Dev

打字稿,参数的类型被绕过

来自分类Dev

“ Duck”打字与打字稿中的函数参数

来自分类Dev

带参数的装饰器

来自分类Dev

带参数的装饰器

来自分类Dev

带参数的装饰器

来自分类Dev

带参数的装饰器

来自分类Dev

打字稿装饰类添加新方法

来自分类Dev

路由器链接中的空查询参数将被忽略是否正确?角度打字稿