如何在TypeScript中使用React 15.5?

时间:2017-04-20 06:22:10

标签: reactjs typescript react-proptypes

使用TypeScript和React的正确方法是什么,现在他们已经在15.5版本的单独项目中提取了PropTypes?

从15.4升级到15.5后,一切运行正常,但现在我在控制台中收到了这个警告:"Warning: Accessing PropTypes via the main React package is deprecated. Use the prop-types package from npm instead."如何让它消失?

我已尝试执行以下步骤,但它并未删除控制台警告。

  • 添加prop-types@types/prop-types个包。
  • 在我导入React import * as PropTypes from "proptypes"的任何地方导入PropTypes。还尝试使用require("prop-types")
  • 关闭noUnusedLocals,以避免编译器抱怨PropTypes未被使用。

即可。由于我使用TypeScript,编译器在编译时验证PropTypes,因此我不需要在运行时执行相同操作,因此我根本不应该收到警告, ?我希望也许我可以在构建配置中的某处添加或更改设置,这将使React在没有PropTypes的情况下进行编译。

2 个答案:

答案 0 :(得分:3)

我遇到了同样的问题,因为我将React导入为:

import * as React from 'react'

我将其更改为:

 import React from 'react'
在我的项目中,警告消失了。

不需要prop-types包。

P.S。我在tsconfig.json中使用babel并拥有"allowSyntheticDefaultImports": true

答案 1 :(得分:2)

想出来:导致警告的是mobx-react-devtools。该问题已被报道并修复,但显然尚未公布。

https://github.com/mobxjs/mobx-react-devtools/issues/59