reactjs - 在 typescript 中增加 react 类型的问题

标签 reactjs typescript react-hooks

我正在尝试添加新的 Hook 以在 typescript 中使用react(我最后检查过,它们在 DefinitelyTyped 上不可用),但它不起作用。

我制作了一个文件 types/react.d.ts 如下所示:

import React from 'react';

declare module 'react' {
  function useState<T>(
    initialState: T | (() => T),
  ): [T, (newState: T | ((oldState: T) => T)) => void];
}

但是当我尝试使用它时,它不起作用。

enter image description here

最佳答案

您可以在此处引用 React Hooks 的流类型 - https://github.com/facebook/flow/pull/7149/

它们应该与 TypeScript 非常相似。

在 Flow 中,它看起来像:

declare type BasicStateAction<S> = (S => S) | S;
declare type Dispatch<A> = A => void;

declare export function useState<S>(
  initialState: (() => S) | S,
): [S, Dispatch<BasicStateAction<S>>];

关于reactjs - 在 typescript 中增加 react 类型的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53065257/

相关文章:

reactjs - 如何使用useEffect控制重新运行

javascript - 如何在 React Js 中的路由映射数组上传递 props

javascript - 如何检查带有对象的数组是否包含属性

typescript - 如何导出函数类型?

node.js - Mongoose promise 与 bluebird 和 typescript

reactjs - 我如何使用React Hooks向用户显示特定的HTTP响应代码和消息

reactjs - MUI 组件的类型中缺少 Typescript Material UI 属性 'classes'

javascript - if 在map函数中reactjs元素的内部循环

javascript - 从 Canvas 保存图像,而无需使用“另存为”

javascript - 自定义 Hook 内的 setState 调用不会更新状态