react-bootstrap:关于未知道具的警告

react-bootstrap: Warnings about unknown props

我不确定为什么,但我注意到我的浏览器控制台中有很多关于未知道具的警告。以下是一些警告:

"Warning: Unknown prop `navbar` on <ul> tag. Remove this prop from the element. For details, see 
    in ul (created by Nav)
    in Nav (created by NavbarWrapper)
    in div (created by NavbarWrapper)"

"Warning: Unknown prop `divider` on <a> tag. Remove this prop from the element. For details, see 
    in a (created by SafeAnchor)
    in SafeAnchor (created by MenuItem)
    in li (created by MenuItem)
    in MenuItem (created by NavbarWrapper)
    in ul (created by DropdownMenu)
    in DropdownMenu (created by Dropdown)
    in li (created by Dropdown)
    in Dropdown (created by Uncontrolled(Dropdown))
    in Uncontrolled(Dropdown) (created by NavDropdown)
    in NavDropdown (created by NavbarWrapper)
    in ul (created by Nav)
    in Nav (created by NavbarWrapper)"

NavbarWrapper 是我编写的一个 React 组件,它呈现一个 React-bootstrap 导航栏。

我是从今天(2016 年 7 月 4 日)开始注意到这些警告的。但是,导航栏按预期工作。

我正在使用 meteor 1.3.4.1,react 15.1.0,react-bootstrap 0.29.5

如果我做错了什么,请有人告诉我吗?

不是真正的答案(新用户,还不能发表评论)但似乎 react recently upgraded to version 0.15.2 并且部分更改发出了将未知元素(或道具)传递给 dom.

这不会破坏您的 UI 但会在您的浏览器控制台中包含烦人的警告日志。

其他相关链接:https://github.com/react-bootstrap/react-bootstrap/issues/1970

我降级到 React v15.0.1,现在一切正常了。这些警告实际上破坏了我的应用程序,因此有必要降级 :(

在 v15.2.0 中,React 验证传递给 DOM 元素(ul、div 等)的道具。 React 期望将有效的道具传递给 DOM 元素。 'style'、'className'、'htmlFor' 等道具是有效道具。可以将任何 props 传递给你自己的 ReactComponents(比如 <ChatBox msg=''/><Book rack='1'/>),但不要传递给核心 DOM 元素。在您的情况下可能不是解决方案,但是如果您将 'data-' 附加到道具名称,例如 'data-propname' React 不会抱怨。