【发布时间】:2021-06-17 22:20:10
【问题描述】:
我有这种类型:
type Route<A> = [A] | [A, A] | [A,A,A]
所以当我这样定义路由时:
const r: Route<number> = [1,2],
r2: Route<number> = [1,2];
我把它们放在一组:
const s = new Set([r, r2]);
我希望它的长度为 1。
为了实现这一点,我使用 Immutable.js:
import { List } from 'immutable';
type Route<A> = List<A>
const ir = List(1,2);
但是现在当我访问这条路线时,我可能会在 0 索引处未定义:
ir.get(0) // possibly undefined.
但我想键入检查它是否包含至少一个元素,最多 3 个元素。
【问题讨论】: