Ошибка: не удается вызвать React.createContext, так как в типе объекта отсутствует свойство createContext. - PullRequest
0 голосов
/ 14 мая 2018

Я пытаюсь использовать новый React Context API в моем приложении.Мое приложение также использует flow для типов.Как только я добавляю // @flow в начало файла, содержащего код:

const MyContext = React.createContext()

, я получаю сообщение об ошибке:

Cannot call React.createContext because property createContext is missing in object type [1].

Где object type [1] ссылаетсяв экспорт типа объединения из файла типов потока для реакции, который содержит типы для DOM, PropTypes, version, createClass и т. д. Я думаю, что лучший способ справиться с этимбыть, чтобы напечатать MyContext, чтобы быть чем-то вроде:

const MyContext: Context = React.createContext()

Но для моей жизни я не могу найти такую ​​информацию о том, как это сделать.Кажется, нет определения типа для Context или возвращаемого значения React.createContext.Кто-нибудь сталкивался с этой проблемой или знает как исправить?

Ответы [ 2 ]

0 голосов
/ 26 июня 2019

React.createContext ожидает тип передаваемого ему аргумента.В вашем случае тип имеет значение null: const MyContext = React.createContext<null>()

Вот еще один пример с аргументом 'test' типа string: const MyContext = React.createContext<string>('test')

0 голосов
/ 14 мая 2018

Обновление flow-bin с 0.68.0 до 0.72.0, кажется, добилось цели.

...