如何在 Dart 中定义只有两种可能的基本类型的变量,例如(String 或 num)?有没有办法做到这一点? 就像 TypeScript 中的联合类型。
const x:string|number;
相关信息/资源:
这个问题可能与这个问题重复这里。
有一个 union 软件包已停产。它已被 freezed 包取代,其中包含您正在寻找的功能,但也包含许多其他内容。
我认为您可能对 dart 的 sealed 类或 either 包感兴趣。
从头开始实施的想法:
要实现您正在寻找的功能,您可以创建自己的类,该类在其构造函数中采用动态类型,如果该类型未计算为您想要强制执行的类型之一,则抛出错误。