<a> 标记上的道具“组件”的值无效

psj*_*j01 6 reactjs

我收到一条错误消息,指出标签上的 prop 'component' 值无效。

下面是我的组件中的代码。

<Link to="/posts" component={Posts}>
    See Posts
</Link>
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

这个错误是什么意思?

Cod*_*ken 2

回答你的另一个问题:

我明白我做错了什么......但是,只是想知道为什么这会抛出一个警告,说它是一个无效的道具?是什么促使它发出该警告。如果我有一个自定义组件并且我向它传递了一些随机道具,它不会导致警告..为什么会在这里发生?

这是因为Link组件将它不使用的所有属性传递给标签<a>。React 发现您component在 上分配了一个 prop,<a>并且它对该元素来说是无效的 prop,因此它会抛出警告。

您可以在 React Router 源代码中看到这一点 - 它是一个简单的组件。

https://github.com/ReactTraining/react-router/blob/master/packages/react-router-dom/modules/Link.js

需要明确的是,这与 PropType 无关。据我所知,PropTypes 没有选项可以在传递未指定的 prop 时抛出错误。