我应该使用@typescript-eslint/explicit-function-return-type eslint 的规则吗?

Should I use @typescript-eslint/explicit-function-return-type eslint's rule?

我已经开始从事一个启用了这个 eslint 规则的项目 (@typescript-eslint/explicit-function-return-type),我想知道它提供了什么价值?

根据我个人的经验,我觉得这条规则并没有提供太多价值,而且在 99% 的情况下都会添加样板。我认为禁用它并仅在无法推断类型时指定类型将是更好的方法。想过这个吗?

我也认为这是多余的。但前提是你使用 --noImplicitAny。我们都知道在 TypeScript 中使用 any 是一种犯罪行为,对吧? (开玩笑)

因此,由于 TypeScript 不允许隐式 anys,所有内容都是明智的类型(除非您明确指定 any,因此添加 es-lint no-explicit-any 以避免监狱时间),TypeScript 将确保所有函数 returns 都被正确输入并相应地使用。

这样我们在必须更改函数签名时获得了更大的灵活性。想象在所有项目中将 id: number 更改为 id: string?因此,为了更灵活,您还可以使用 id: Entity["id"] - 编写时间更长但永不中断。