将数组指定为元组
Specify array as a tuple
比如我有一个摘要class:
type Tuple = [string, number]
abstract class SomeAbstractClass {
tuples: Tuple[]
}
但是当我想实现这个的时候class
class SomeConcreteClass implements SomeAbstractClass {
public tuples = [
['hello', 3],
['world', 4]
]
}
我收到错误“(string | number)[][] is not assignable to Tuple[]
”。
如何告诉Typescript我提供的数组实际上满足接口?
只需使用显式类型:
type Tuple = [string, number]
abstract class SomeAbstractClass {
tuples: Tuple[] = null as any
}
class SomeConcreteClass implements SomeAbstractClass {
public tuples: Tuple[] = [
['hello', 3],
['world', 4]
]
}
SomeConcreteClass
tuples
属性 是可变的,因此 TypeScript 不确定它是否可分配给抽象 class 元组
比如我有一个摘要class:
type Tuple = [string, number]
abstract class SomeAbstractClass {
tuples: Tuple[]
}
但是当我想实现这个的时候class
class SomeConcreteClass implements SomeAbstractClass {
public tuples = [
['hello', 3],
['world', 4]
]
}
我收到错误“(string | number)[][] is not assignable to Tuple[]
”。
如何告诉Typescript我提供的数组实际上满足接口?
只需使用显式类型:
type Tuple = [string, number]
abstract class SomeAbstractClass {
tuples: Tuple[] = null as any
}
class SomeConcreteClass implements SomeAbstractClass {
public tuples: Tuple[] = [
['hello', 3],
['world', 4]
]
}
SomeConcreteClass
tuples
属性 是可变的,因此 TypeScript 不确定它是否可分配给抽象 class 元组