一个很常见的 TypeScript 错误 TS2349,即sth has no call signatures.
在不同的情况下,它使用不同的变通方法来解决。但是处理反应的上下文,我发现的最佳解决方案是使用// @ts-ignore.
请问,在这种情况下正确的方法是什么?
// auth.tsx
import { CurrentUserContext } from 'components/currentUser';
import React, { useState, useEffect, useContext } from 'react';
const Auth = ({ onLogin }: {onLogin: any}) => {
const [, setCurrentUserState] = useContext(CurrentUserContext);
const [credentials, { data }] = useMutation(AUTH);
...
useEffect(() => {
if (data) {
// TypeScript Error without @ts-ignore:
// This expression is not callable.
// Type '{}' has no call signatures. TS2349 …Run Code Online (Sandbox Code Playgroud)