Typescript 如何在解构语法中使用断言?
在Typescript中,如何在分解结构时使用断言Typescript 如何在解构语法中使用断言?,typescript,Typescript,在Typescript中,如何在分解结构时使用断言 type StringOrNumber = string | number const obj = { foo: 123 as StringOrNumber } const { foo } = obj 我没有找到一种方便的方法在constfoo上添加number类型断言。有两种变通办法: // A: const { foo } = obj as { foo: number } // B: const { foo: foo2 } =
type StringOrNumber = string | number
const obj = {
foo: 123 as StringOrNumber
}
const { foo } = obj
我没有找到一种方便的方法在constfoo
上添加number
类型断言。有两种变通办法:
// A:
const { foo } = obj as { foo: number }
// B:
const { foo: foo2 } = obj
const foo = <number>foo2
绝对可以帮助我们从嵌套和复杂的解构中断言类型。根据,在解构时无法正确转换类型。显然,除了您提供的解决方法之外,没有其他解决方法。
const{foo:number}=obj代码>?这不起作用,它将取foo
的值,并将其分配给变量number
我遇到了同样的问题,调用foo作为number(foo)
对我来说是个诀窍,告诉TS输出是一个数字。
const { <number>foo } = obj