问题标签 [strict-mode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
reactjs - material-ui Drawer - findDOMNode 在 StrictMode 中已弃用
我有一个使用 StrictMode 的基于钩子(无类)的简单 ReactJS 应用程序。
我正在使用 React 版本 16.13.1 和 Material-UI 版本 4.9.10。
在 Appbar 中,我使用的是 Drawer。
我注意到当我打开抽屉时,我收到以下警告。
我在网上找到了有关此问题的一些参考资料,但仍然无法弄清楚如何解决此问题。
有人可以为这个问题添加一些解决方法吗?
谢谢
reactjs - 警告:在 StrictMode 中不推荐使用 findDOMNode
当我在尝试编辑时单击选择下拉字段时出现此错误。它说:findDOMNode 在 StrictMode 中已弃用。findDOMNode 被传递了一个在 StrictMode 中的 Transition 实例。相反,直接将 ref 添加到要引用的元素。
这是codeandbox的链接,
https://codesandbox.io/s/react-material-ui-0yqeo?file=/src/components/exercises/Form.js
reactjs - React Js解析错误:严格模式下不允许遗留八进制文字
我是 React Js 的新手,我有一个表单,我从用户那里得到一个字符串,我把这个字符串分成空格,然后我把它保存在我的状态变量中,这段代码工作正常:
然后我只是尝试添加变量以在数组中推送数据(如果它不存在“smth”),但出现此错误:解析错误:在严格模式下不允许传统八进制文字。
所以第一个代码工作正常,但它没有添加不匹配的字符串,这就是我想要添加的,希望我能得到一些帮助。谢谢你。
node.js - 从 reactstrap 使用模态的警告
我有一些警告:
和
一个月前我没有。
应用程序工作正常,但我总是想以正确的方式清除所有警告。我假设我必须从 react-transition-group 添加过渡组件,但是我更喜欢在 CSS 中完成所有过渡和动画(对我来说,使用 react-waypoint 效果更好)。我的反应版本是 16.13.1
最后,我有两个问题。
1)这个警告的目的是什么,这意味着它为什么被弃用?
2)我应该在哪里插入这个 react-group-transition 转换或者我应该如何更改这个 Modal 以清除错误?
javascript - 在 StrictMode 中不推荐对 findDOMNode 进行查询
我是React新手,最近遇到了这个警告:findDOMNode 在 StrictMode 中已弃用。findDOMNode 被传递了一个在 StrictMode 中的 Transition 实例。相反,直接将 ref 添加到要引用的元素。
原来这个警告是由于我使用的库是Material UI。我找到了一种解决方法,可以从这篇文章中删除这个恼人的警告。
现在不要误会我的意思,该解决方案就像魔术一样有效,但好奇的我想问一下,如果我执行上述解决方案,是否可能会出现任何副作用?
javascript - findDOMNode 在 StrictMode 中已弃用。findDOMNode 被传递了一个 DraggableCore 的实例,该实例位于 StrictMode 内
Draggable 包在严格模式下导致错误:
警告:
findDOMNode
在 StrictMode 中已弃用。findDOMNode
传递了一个 DraggableCore 实例,该实例位于 StrictMode 中。相反,直接将 ref 添加到要引用的元素。在此处了解有关安全使用 refs 的更多信息: https ://reactjs.org/docs/strict-mode.html#warning-about-deprecated-finddomnode-usage
显然他们从来没有修复它https://github.com/STRML/react-draggable/issues/440,你有什么好的/优雅的解决方案吗?
javascript - 如何在不删除 react index.js 文件中的严格模式的情况下解决严格模式警告
当我<Button />
以下面的形式使用时,它会说
Warning: findDOMNode is deprecated in StrictMode. findDOMNode was passed an instance of RefFindNode which is inside StrictMode. Instead, add a ref directly to the element you want to reference.
即使我使用了 useRef,它仍然显示此警告。那么我可以在不删除索引文件中的 <React.StrictMode></React.StrictMode> 的情况下修复它吗
typescript - 为什么过滤具有未定义键的对象会在 TypeScript 严格模式下出错
我用 TypeScript 编写了这段代码,并启用了严格模式。
它无法编译并出现此错误:
这是为什么?不是所有具有属性的对象在被ped之前都name
被undefined
过滤掉了吗?map
如果我将select
函数的返回类型更改为(string | undefined)[]
,则编译成功。
javascript - 反应严格模式下的 Material UI 控制台警告
随着应用程序的增长,控制台就像足球衫一样脏。
我是什么意思?
严格模式下的 Material UI 会抛出 FindDomNode 之类的警告,或者在 props中使用strings
而不是使用。booleans
问题是控制台在开发模式下就像一堵红墙,但我不想摆脱strict mode
我想摆脱这些警告。
我有一个想法来创建一个“警告白名单”来隐藏众所周知的警告,但实际上,我不知道如何以正确的方式做到这一点。
目标是在控制台中清楚地看到新的、更危险的警告/错误。
也许有更好的方法来解决我的问题,但我的研究什么也没做。如果你有任何想法,我会很高兴听到它
mysql - 将 MySQL5.6 更新到 MariaDB10.3 后出现致命错误 - 由 sql 严格模式引起?
我的 ISP 已更新托管我的应用程序的共享服务器。它涉及从 MySQL 5.6 到 MariaDB 10.3 的更新。ISP 写道: MariaDB 在很大程度上与 MySQL 兼容,并且大多数 Web 应用程序都可以与 MariaDB 一起正常工作。换句话说,它们不会受到最小差异的影响。
但是,自从更新以来,我的许多 EDIT 和 INSERT 不再起作用并产生致命错误。在我的搜索中,我发现:
- 问题在于写入数据库
- 当并非所有字段都有值时似乎会发生,而我的应用程序中允许使用空字段
在我的进一步调查中,我遇到了: https ://forums.cpanel.net/threads/mariadb-10-2-disabling-strict-mode.635157/ 根据这个线程,我了解解决方案可能是在更改 sql 模式服务器设置来自:
STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
到:
NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
我试图通过 DirectAdmin/PHPAdmin 变量对其进行更改。由于它是共享服务器,因此我不允许更改设置,因此无法检查(需要超级权限)。
我现在有3个问题:
- 这会是解决方案吗?在这种情况下,我会要求我的 ISP 更改此设置。
- 这是修复它的最佳方法吗?
- 我可以用另一种方式解决这个问题吗?
建议非常感谢。