Вызов функции внутри компонента React без сохранения состояния

Я пытаюсь вызвать функцию ButtonAppBar внутри моего компонента без сохранения состояния, но компилятор TS выдает мне эту ошибку: '{' expected. Я не уверен, следует ли мне передавать его моему компоненту New Header или мне следует указать ему тип.

Вот мой компонент

import * as React from "react";
import { withStyles, createStyles } from "@material-ui/core/styles";
import AppBar from "@material-ui/core/AppBar";
import Toolbar from "@material-ui/core/Toolbar";
import Typography from "@material-ui/core/Typography";
import Button from "@material-ui/core/Button";
import IconButton from "@material-ui/core/IconButton";
import MenuIcon from "@material-ui/icons/Menu";

const styles: any = createStyles({
  root: {
    flexGrow: 1
  },
  header: {
    backgroundColor: "#007"
  },
  grow: {
    flexGrow: 1
  },
  menuButton: {
    marginLeft: -12,
    marginRight: 20
  }
});

const ButtonAppBar = (styles) => {
  const classes = styles;
  return (
    <div className = {classes.root}>
      <AppBar position = "static" className = {classes.header}>
        <Toolbar>
          <IconButton
            className = {classes.menuButton}
            color = "inherit"
            aria-label = "Menu"
          >
            <MenuIcon />
          </IconButton>
          <Button color = "inherit">Home</Button>
          <Button color = "inherit">Help</Button>
        </Toolbar>
      </AppBar>
    </div>
  );
}

const NewHeader: React.StatelessComponent<props> = ({}) => {
  return (
    {ButtonAppBar()}
  );
}

export default withStyles(styles, NewHeader);
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
0
0
68
1

Ответы 1

Ваш код не разбирается должным образом.

const NewHeader: React.StatelessComponent<props> = ({}) => ButtonAppBar();

либо:

const NewHeader: React.StatelessComponent<props> = ({}) => {
  return ButtonAppBar();
}

Другие вопросы по теме