内置类型的 Typescript 别名

And*_*kac 2 typescript

我如何为内置类型(例如实用程序类型)创建别名,我有与内置类型同名的定义,并且碰巧使用与内置类型同名的类型,例如:

interface Record { // <-- my definition

   toObject() : Record<string, object> // <-- built in definition
}
Run Code Online (Sandbox Code Playgroud)

不起作用

type TsRecord<K,V> = Record<K, V>
Run Code Online (Sandbox Code Playgroud)

如果有导入方法,我找不到参考

import {Record as TsRecord} from ?
Run Code Online (Sandbox Code Playgroud)

jca*_*alz 7

如果您使用的是 TypeScript 3.4 或更高版本,则可以使用globalThis命名空间来访问其名称已被本地声明隐藏的全局类型:

interface Record { // <-- my definition
  toObject(): globalThis.Record<string, object> // <-- built in definition
}
Run Code Online (Sandbox Code Playgroud)

好的,希望有帮助;祝你好运!

Playground 代码链接