Проблема расширения типов реакции в машинописи - PullRequest
0 голосов
/ 30 октября 2018

Я пытаюсь добавить новые хуки, чтобы реагировать в машинописи (в последний раз я проверял, они не были доступны в DefinitiveTyped), но это не работает.

Я создал файл 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

Ответы [ 2 ]

0 голосов
/ 17 декабря 2018

Оказалось, что проблема связана с tsconfig.json конфигурацией, как предложил Мэтт Маккатчен.

0 голосов
/ 12 ноября 2018

Вы можете обратиться к типам потока для реактивных крючков здесь - https://github.com/facebook/flow/pull/7149/

Они должны быть очень похожи на TypeScript.

В потоке это выглядит так:

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>>];
...