无法读取 t.isMuiElement 处未定义的属性“muiName”?

ham*_*ani 5 dialog reactjs material-ui

我在chrome浏览器中遇到这个问题。

Uncaught TypeError: Cannot read property 'muiName' of undefined at t.isMuiElement (reactHelpers.js:31) 
Run Code Online (Sandbox Code Playgroud)

当我使用该错误<List> <ListItem><DialogContent>显示。

<DialogContent> 
  <List>
     <ListItem> <ListItemText primary='Minimum booking notice: 24 hours in advance' /> </ListItem>            
     <ListItem> <ListItemText primary='Tour costs: Tour costs and what inclusion or exclusion is listed on the itinerary for each tour. No refunds will be given for unutilized services.'/></ListItem>
   </List>
</DialogContent>
Run Code Online (Sandbox Code Playgroud)

解决办法是什么?

Nea*_*arl 6

这发生在我身上,因为我将 的变体设置TextField为未知值:

<TextField variant="unkownVariant"
Run Code Online (Sandbox Code Playgroud)

variant prop默认情况下只接受以下类型:'filled' | 'outlined' | 'standard'

要修复此问题,只需再次将变体更改为正确的类型即可。

<TextField variant="filled"
Run Code Online (Sandbox Code Playgroud)


ham*_*ani 2

我意识到使用muiName

什么是 muiName 属性?何时必须为 Material-UI 组件设置它?

const DialogContentList = (props) => (
  <List>
  <ListItem> 
    <ListItemText primary='Minimum booking notice: 24 hours in advance' />
  </ListItem> 
  </List>
);
DialogContentList.muiName = 'IconMenu';
class Footer extends Component {
      constructor(props) {
        super(props);
        this.state= {
          open: false
        }     
      }
      render() {
<DialogContentList />
      }
    }
    export default withMobileDialog()(withStyles(styles)(Footer));
Run Code Online (Sandbox Code Playgroud)

我找到了问题的原因。在过去,我使用material-ui的是已弃用的。所以material-ui/core/请使用它。在我使用之前

import List, { ListItem, ListItemText } from '@material-ui/core/List'; 现在我用这个

import List from '@material-ui/core/List';
import ListItem from '@material-ui/core/ListItem'; 
import ListItemText from '@material-ui/core/ListItemText'; 
Run Code Online (Sandbox Code Playgroud)

我的问题解决了