在打字稿中增加反应类型的问题
Issue augmenting the react types in typescript
我正在尝试添加新的钩子以在 typescript 中做出反应(上次我检查过,它们在 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];
}
但是当我尝试使用它时,它不起作用。
您可以在此处参考 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>>];
事实证明,问题与 tsconfig.json
配置有关,正如 Matt McCutchen 所建议的那样。
我正在尝试添加新的钩子以在 typescript 中做出反应(上次我检查过,它们在 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];
}
但是当我尝试使用它时,它不起作用。
您可以在此处参考 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>>];
事实证明,问题与 tsconfig.json
配置有关,正如 Matt McCutchen 所建议的那样。