微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

CLJS/Reagent:React 无法识别 DOM 元素上的 prop

如何解决CLJS/Reagent:React 无法识别 DOM 元素上的 prop

我看到 Javascript/React 中有很多类似的问题,但是我在使用 CLojureScript/Reagent 时遇到了这个问题,我不知道如何在不弄乱我所有应用程序状态名称的情况下解决它。

>

所以我在浏览器控制台中收到这些警告:

react_devtools_backend.js:2430 Warning: React does not recognize the `showWarning` prop on a DOM element. If you intentionally want it to appear in the DOM as a custom attribute,spell it as lowercase `showwarning` instead. If you accidentally passed it from a parent component,remove it from the DOM element.

这些似乎来自应用程序状态中的项目名称

(defonce app-state (reagent/atom {:show-warning "none"}))

我发现的唯一解决方案是将项目从 :show-warning 重命名:showwarning,但这会导致一堆难以阅读的项目。

我无法真正控制 Reagent 如何将诸如 :show-warning 之类的键重命名为“showWarning”,但作为 React 工作原理的基础,这似乎可以更简洁地处理此问题。

谢谢!

解决方法

React 真的不应该能够看到你的状态或关心其中的内容。我的猜测是你在道具位置的某个地方渲染你的状态。很可能在您的代码中的某个地方有 [:div @app-state]。可能您正在尝试呈现状态并且应该已经完成​​ [:div {} @app-state]

这对 Reagent 来说可能有点问题,因为 [:p @im-a-string] 会渲染字符串,但 [:p @im-a-map] 会将地图视为道具。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?