警告信息:

Warning: findDOMNode is deprecated in StrictMode. findDOMNode was passed an instance of DOMWrap which is inside StrictMode. Instead, add a ref directly to the element you want to reference. Learn more about using refs safely here: https://fb.me/react-strict-mode-find-node




react使用antd警告:Warning: findDOMNode is deprecated in StrictMode._ecmascript


警告原因:

是因为 ​​react 中的严格模式​​​: ​​StrictMode​

解决办法:

找到index.js 果然默认是严格模式,删除<React.StrictMode>标签,关闭严格模式,警告自然消除了



react使用antd警告:Warning: findDOMNode is deprecated in StrictMode._reactjs_02



react使用antd警告:Warning: findDOMNode is deprecated in StrictMode._ecmascript_03


很显然删除react的严格模式看起来并不是明智之举,但是在网上找了一圈貌似也就只有这一个解决办法。我们来看看严格模式的作用:​​http://react.caibaojian.com.cn/docs/strict-mode.html​

严格模式的定义:

StrictMode 是一个用以标记出应用中潜在问题的工具。就像 Fragment ,StrictMode 不会渲染任何真实的UI。它为其后代元素触发额外的检查和警告。

注意: 严格模式检查只在开发模式下运行,不会与生产模式冲突。

​StrictMode​​目前有助于:

将来的React版本将添加其他功能。

决定

既然这个antd没有做好的事情,而且需要使用antd, 对生产没有影响,StrictMode对开发过程又有一定的作用,所以就保留这个提醒吧!