ESLint抱怨TypeScript类型声明在声明之前使用了type

人民先生

我正在创建一个具有类型的生成器,我声明类型的方式是:

export type BuilderInterface<T> = {
  [key in keyof T]: (arg: T[key]) => BuilderInterface<T> } & {
  build(): T
}

运行ESLint时,它抱怨说:"BuilderInteface" was used before it was defined (no-use-before-define)这是正常的,因为我需要断言每个参数函数都返回相同类型的生成器。

在不违反eslint规则的前提下,我必须声明哪些方法?我应该直接忽略该规则吗?为什么?

芬顿

ESLint是(某种)正确的,因为从技术上讲,您尚未声明类型并且正在使用它。递归类型很难处理。尝试使用TSLint来查看是否更好地了解TypeScript,从而获得更好的结果。

TypeScript团队非常擅长递归类型,因此它是有效的类型。

禁用规则或创建例外,这样工具就可以让您继续工作!

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在TypeScript中使用导入类型的环境声明

TypeScript中的类型声明顺序

使用TypeScript声明类类型(将类作为参数)

声明类型之前/之后的数组分配

内联使用Typescript声明类型

Typescript扩展类型声明

Typescript声明合并库类型

使用TypeScript和Chai强类型化的深度相等声明

声明符合类型的Typescript函数

在Typescript中,如何在声明函数之前使用它?

Swift / Xcode奇怪的行为:在声明之前使用结构的情况下,显示“使用未声明的类型”错误

为什么我可以在声明之前使用结构类型的指针

Eslint和Typescript抱怨在两个不同文件中声明的变量

如何在TypeScript中使用属性声明函数的类型?

Promise的Typescript类型声明,该声明返回React组件

@ typescript-eslint / no-unused-vars在类型声明中为假肯定

TypeScript:使用名称未知的字段声明类型或接口

TypeScript类型声明

在TypeScript中使用已声明模块的类型

如果在声明类型之前引用了该类型,如何在Xtext IDE中显示错误

当我使用我之前声明的全局变量时,eslint 显示错误

Typescript / Angular Type 声明没用?

变量在声明之前如何使用?

使用声明合并来构建类型(Typescript)

声明在服务 TypeScript 文件中声明的相同类型的数组?

使用 Typescript 声明了一个类型,但 Javascript 在内部使用了错误的类型

TypeScript 如何在模块声明中使用映射类型?

Typescript 在函数之前或类型声明之后编写的 genic 有什么区别?

typescript 声明类型的区别