mve*_*and 10 decorator typescript typescript1.8
我想为可以获取参数的类创建一个装饰器函数.
例
@Plugin("My first Plugin")
class myFirstPlugin {
...
}
Run Code Online (Sandbox Code Playgroud)
我试过这个,但它不起作用:
function Plugin(constructor: Function, name:string){
console.log("Plugin found: " + name);
}
Run Code Online (Sandbox Code Playgroud)
我在WebStorm中遇到错误说:
TS2346:提供的参数与呼叫目标的任何签名都不匹配
我该如何编写这个装饰器功能?
Nit*_*mer 22
如果您希望装饰器接收参数,那么装饰器函数需要返回实际的装饰器函数:
function PluginDecorator(name: string) {
return (ctor: Function) => {
console.log("Plugin found: " + name);
}
}
@PluginDecorator("My first Plugin")
class myFirstPlugin {}
Run Code Online (Sandbox Code Playgroud)
(游乐场代码)
我将名称更改为PluginDecorator因为Plugin已经存在并且编译器抱怨该名称.
| 归档时间: |
|
| 查看次数: |
6187 次 |
| 最近记录: |