react 用组件的默认字段无法传值

开发环境:react antd

我自己写了一个新组件<ModelItem/>把它放在modelSetting里面

然后我是这样写的

clipboard.png

然后key的值怎么都获取不到。但是getModelDataAgain的值可以获取到。

后来把key改成key22就能获取到key22的值了。

clipboard.png

请问这是为什么,就算key是默认字段,我不能覆盖掉它吗?明明传入了key,却获取不到,显示undefined。

阅读 2.5k
2 个回答

react中的key属性,它是一个特殊的属性,它是出现不是给开发者用的(例如你为一个组件设置key之后不能获取组件的这个key props),而是给react自己用的。可以参考https://segmentfault.com/a/11...

React 框架的设计上就是如此的,你不能覆盖这个属性。key 是为 react 进行 DOM 节点比较而设置的属性,并不是给使用 react 框架的用户传参设置的。

Github react issue 有个类似的问题的讨论,感兴趣可以看一下。

https://github.com/facebook/r...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题