打字稿:与基本类型平行的自定义类型被忽略

Posted

技术标签:

【中文标题】打字稿:与基本类型平行的自定义类型被忽略【英文标题】:Typescript: Custom type that parallels base type ignored 【发布时间】:2020-07-11 07:55:34 【问题描述】:

期望: 如果我创建一个与现有类型平行的自定义类型,我希望看到分配给该类型的变量会保持该类型,而不是回退到并行的基本类型。下面的函数f 应该返回Dog 类型而不是string 类型。

type Dog = string;

const f = (dog: Dog): Dog => 
    return dog;
;

现实:

Typescript 这样做有什么原因吗?这是一个错误吗?我意识到这两种方法在定义上是等效的,但我想使用我的自定义类型来提高可读性。有什么想法吗?

【问题讨论】:

【参考方案1】:

我认为这将帮助您了解有关别名的更多信息。

Aliasing doesn’t actually create a new type - it creates a new name to refer to that type.

【讨论】:

谢谢 - 正是我所缺少的。

以上是关于打字稿:与基本类型平行的自定义类型被忽略的主要内容,如果未能解决你的问题,请参考以下文章

使用graphql代码生成器时如何将自定义标量类型映射到打字稿类型?

如何在 Angular 2 中包含打字稿自定义类型定义?

打字稿错误:类型“文档 []”不可分配给自定义类型

如何在打字稿中正确导入自定义类型

自定义主题样式组件的打字稿

使用打字稿创建自定义反应路由组件。类型上不存在属性“路径”... RouteProps