开发者问题收集

REACT - 未知的事件处理程序属性

2019-04-10
8071

我有一个名为 RepositoryListDialog 的自定义组件,当我使用它时

 <RepositoryListDialog  onselecteditem = {this.onRepositorySelected} />

React 在控制台中向我返回一个警告:

未知的事件处理程序属性 onselecteditem 。它将被忽略。

我注意到这个问题,如果我为原生 DOM 标签(如 div)或其他标签放置一个无法识别的属性,就会出现这个问题。

但 RepositoryListDialog 是一个自定义标签,我不明白这个 React 警告。

RepositoryListDialog

<Dialog   
  aria-labelledby="repository-list-dialog" 
  open={this.props.dialogShowed} 
  classes={{paper:classes.cssRepositoryListDialogPaper}} 
  {...other}> 
  
  <DialogTitle id="repository-list-dialog-title">Select Repository</DialogTitle> 
</Dialog>
2个回答

RepositoryListDialog 组件内部,你可能会有类似这样的内容:

<div {...this.props}>
Uladzislau Ulasenka
2019-04-10

刚刚遇到这个问题。尝试将首字母大写。JSX 要求自定义组件以大写字母开头。似乎两种方式都可以(即它会发出警告但仍然有效),但将首字母大写应该可以消除这个问题。

Andrew S
2021-01-25