【发布时间】:2021-03-04 06:20:09
【问题描述】:
在导入类型化函数时,我遇到了 no-unsafe-call 和 no-unsafe-assignment eslint 错误。如果函数在同一个文件中声明,错误就会消失。好像eslint无法获取导入函数的返回类型。
在 useWorkspaceMessages.ts
export interface WorkspaceMessage {
message: string;
created: string;
}
export default function useWorkspaceMessages(): WorkspaceMessage[] {
return [];
}
在 app.tsx 中
import useWorkspaceMessages, {
WorkspaceMessage,
} from 'useWorkspaceMessages';
const workspaceMessages: WorkspaceMessage[] = useWorkspaceMessages();
^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^
error Unsafe assignment of an any value @typescript-eslint/no-unsafe-assignment
error Unsafe call of an any typed value @typescript-eslint/no-unsafe-call
如果我在 app.tsx 中声明 useWorkspaceMessages 和 WorkspaceMessage 接口,错误就会消失。
【问题讨论】:
-
在 Node.js 和 TS 4.0.3 上工作正常
-
@Anatoly 谢谢。是的,我的设置可能有问题。我在 ts 4.1.2 上,上周刚刚设置了我的依赖项。不确定是否有什么导致 eslint no 理解导入类型
-
4.1.2 不是 beta/dev/unstable 版本吗?
-
看起来是最新的稳定版。但不管怎样,我想通了。我有一个错误.eslint.js parserOptions.project
标签: typescript eslint