当我们为相同的组件传递相同的属性多次时,就会导致"No duplicate props allowed"
警告。为了解决该警告,请确保只传递一次该属性。比如说,如果传递多次className
属性,将它们连接成一个空格分隔的字符串。
下面的示例用来展示如何导致警告的。
const App = () => { // ⛔️ JSX elements cannot have multiple attributes with the same name.ts(17001) // No duplicate props allowed eslintreact/jsx-no-duplicate-props return ( <div> <Button text="Click" text="Submit" /> </div> ); }; function Button({text}) { return <button onClick={() => console.log('button clicked')}>{text}</button>; } export default App;
代码片段中的问题在于,我们为Button
组件传递了两次text
属性。这是不被允许的,因为第二个text
属性会覆盖第一个。
请确保每个属性只传递给同一个组件一次。
const App = () => { //相关文章
- Objects are not valid as a React child报错解决
- Can't perform a React state update on an u
- 解决React报错Property 'X' does not exist on type '
- Pycharm没有报错提示(误触ignore)的完美解决方案
- Mobx实现React 应用的状态管理详解
- React实现合成事件的源码分析
- react中useState改变值不渲染的解决方式
- 解决ant-design-vue安装报错的问题
- React浅析Fragments使用方法
- React Refs转发实现流程详解
- vue项目打包:修改dist文件名方式