Поместите значок Material-ui в круговой индикатор прогресса - PullRequest
0 голосов
/ 30 апреля 2020

Я хотел бы использовать круговой индикатор прогресса из Material-UI в заголовке моего приложения. Но я просто не знаю, как правильно разместить значок загрузки из Material Icons внутри, чтобы индикатор выполнения перемещался вокруг значка. Вот что у меня сейчас: enter image description here

и я хочу добиться этого:

enter image description here

Я пытался разместить иконку с абсолютным позиционированием, но, вероятно, есть лучшая идея

import React from "react";
import ReactDOM from "react-dom";
import CircularProgress from "@material-ui/core/CircularProgress";
import Button from "@material-ui/core/Button";
import AppBar from '@material-ui/core/AppBar';
import Toolbar from '@material-ui/core/Toolbar';
import IconButton from '@material-ui/core/IconButton';
import VerticalAlignBottomIcon from '@material-ui/icons/VerticalAlignBottom';


function CircularStatic() {
  const [completed, setCompleted] = React.useState(0);

  React.useEffect(() => {
    function progress() {
      setCompleted((prevCompleted) =>
        prevCompleted >= 100 ? 0 : prevCompleted + 10
      );
    }

    const timer = setInterval(progress, 1000);
    return () => {
      clearInterval(timer);
    };
  }, []);

  return (
    <div>
      <Button variant="contained" color="primary">
        <CircularProgress variant="static" value={completed} color="inherit">
		</CircularProgress>
      </Button>
    </div>
  );
}


function ButtonAppBar() {
  return (  
      <AppBar position="static" style={{ backgroundColor: 'teal' }}>
        <Toolbar>
          <IconButton edge="start" color="inherit">
			<VerticalAlignBottomIcon />
			<CircularStatic/>
          </IconButton>
        </Toolbar>
      </AppBar>
  );
}

ReactDOM.render(<ButtonAppBar />, document.getElementById("root"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...