Реагировать: элемент привязки «дети» неявно имеет тип «любой»

#reactjs #material-ui

Вопрос:

У меня есть этот простой код, и я хочу использовать «детей», но когда я его использую, я получаю эту ошибку:

 Binding element 'children' implicitly has an 'any' type.
 

Как я могу решить эту проблему?

 const ResponsiveContainerGrid = ({ children }) => {
  const classes = useStyles();

  return (
    <div>
      <Grid
        className={classes.root}
        container
        direction="row"
        justifyContent="center"
        alignItems="center"
      >
        {children}
      </Grid>
    </div>
  );
};

export default ResponsiveContainerGrid;
 

Ответ №1:

Вы можете ввести свой компонент следующим образом:

 import { FC } from "react";
const ResponsiveContainerGrid: FC = ({ children }) => { ... }
 

Таким образом, дочерняя опора будет введена неявно.
FC расшифровывается как Функциональный компонент и уже имеет предварительно children определенный реквизит. Если вы хотите использовать пользовательский реквизит, то вы можете ввести его следующим образом:

 const ResponsiveContainerGrid: FC<{myprop: MyPropType}> = ({ children, myProp }) => { ... }