让我们假设我们有一个类型和一个数组:
type Fruit = 'apple' | 'orange' | 'pineapple'
const initialFruits: Fruit[] = ['pineapple', 'apple', 'orange']
如果我try 在赋值之前对数组进行排序,则会得到一个错误:
const initialFruits: Fruit[] = ['pineapple', 'apple', 'orange'].sort()
// Type 'string[]' is not assignable to type 'Fruit[]'.
我发现了一种在排序后保存类型的方法,但它看起来很奇怪:
const initialFruits: Fruit[] = [
'pineapple' as const,
'apple' as const,
'orange' as const
].sort()
有没有更方便的方法来解决这个问题?