【发布时间】:2021-10-15 23:42:39
【问题描述】:
我正在尝试使用 TypeScript 在 React 应用程序中编写一个自定义挂钩,该挂钩可以采用多个可选的回调函数。但是我收到以下错误:
未捕获的类型错误:无法读取未定义的属性(读取“onUpdate”)。我这样写一个界面:
interface UseMyHookProps {
onConnect:() => void;
onUpdate?:() => void;
onDisconnect?:() => {};
}
然后我的钩子是这样的:
const useMyHook = ({ onConnect = () => {}, onUpdate = () => {}, onDisconnect = () => {} }: UseMyHookProps) => {
...
// call the callback if defined.
onUpdate();
};
最后我像这样在组件函数中调用钩子:
const MyComponent = () => {
useMyHook();
...
};
我不明白为什么会出现此错误。我说回调是可选的,并提供了一个不执行任何操作的 void 函数的默认参数。
【问题讨论】:
标签: reactjs typescript react-hooks