繁体   English   中英

创建函数类型(TypeScript 接口)

[英]Create Function Type (TypeScript Interface)

我需要创建一个函数类型,根据第一个值告诉我第二个值的类型必须是什么

  type BType = number | string | array
  enum AEnum = { number = "number" , string : "string" , array : "array"} 

  const fc = (a : AEnum , b : BType)=>{ 
   //...
  }
 

我需要的是当a = AEnum.array时, b必须是array ,否则应该显示错误

我怎么能做这样的事情?

只是重载函数!

type BType = number | string | []
enum AEnum { number = "number", string = "string", array = "array" }

function foo(a: AEnum.number, b: number): unknown;
function foo(a: AEnum.string, b: string): unknown;
function foo(a: AEnum.array, b: []): unknown;
function foo(a: AEnum, b: BType): unknown {
    return void;
}

操场

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM