Я вижу, что в 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, и у него будет более чистый способ справиться с этим.
Спасибо!
[div @app-state]
. Возможно, вы пытались отрендерить его и должны были сделать[div {} @app-state]
. Это немного загвоздка, так как если бы у вас было что-то, что оценивается как строка, все было бы хорошо, но реагент карты будет пытаться обрабатывать как реквизит. - person Walton Hoops   schedule 12.02.2021