相关疑难解决方法(0)

为什么 Typescript 无法弄清楚我的代码中的类型?

为什么 Typescript 编译器会抱怨以下代码?

type Foo = {
  a: string
}

type Bar = {
  b: number
}

type Baz = Foo | Bar;

function f(x: Baz): number {
  if (x.a) { // property 'a' does not exist on type Bar!
    return 0;
  }

  if (x.b) { // property 'b' does not exist on type Foo!
    return 1;
  }

  return -1;
}
Run Code Online (Sandbox Code Playgroud)

链接到游乐场

narrowing typescript

7
推荐指数
1
解决办法
89
查看次数

标签 统计

narrowing ×1

typescript ×1