【发布时间】:2020-03-25 15:12:23
【问题描述】:
我会将字符串类型的变量传递给外部库方法,该方法具有由定义的文字暗示的参数类型之一。下面是对我有问题的示例代码。代码有错误:'string' 类型的参数不能分配给'Literal' 类型的参数。我怎样才能使这个代码工作?
type Literal = 'A' | 'B' | 'C';
function isAWithLiteral(literal:Literal): boolean
{
return literal === 'A';
}
console.log(isAWithLiteral('B'));
console.log(isAWithLiteral('A'));
function isAWithString(literal: string): boolean
{
return isAWithLiteral(literal);
}
我想用我的界面完全覆盖外部库。我不会在任何代码中使用 Literal 依赖项,只需要一个适配器。
【问题讨论】:
-
如果传递给
isAWithString的参数不是Literal怎么办?你想发生什么? -
我会抛出错误。
标签: javascript typescript literals