TypeScript 中“set”函数的正确类型是什么?

lam*_*ade 3 typescript

我在 TypeScript 中有一个这样的函数:

set parameter(value: string) {
  this._paremeter = value;
}
Run Code Online (Sandbox Code Playgroud)

这很好用。为了完整起见,我想:让我们添加正确的类型,表明该函数不会重新调整任何内容。但是,没有一个起作用:

set parameter(vale: string): void {}
set parameter(vale: string): never {}
Run Code Online (Sandbox Code Playgroud)

我也尝试过这些,只是为了确定一下。但当然,这些都行不通:

set parameter(vale: string): undefined {}
set parameter(vale: string): null {}
Run Code Online (Sandbox Code Playgroud)

是否有正确的类型,或者set函数应该根本没有类型?

Jac*_*don 6

Setter 不支持指定返回类型。

\n

来自(现已弃用)语言规范:

\n
\n

SetAccessor:
\n\xe2\x80\x83 set PropertyName ( BindingIdentifierOrPattern TypeAnnotation(可选) ) { FunctionBody }

\n
\n