gpt4 book ai didi

reactjs - 在 makeStyles 关键帧动画中传递 Prop

转载 作者:行者123 更新时间:2023-12-05 02:04:42 24 4
gpt4 key购买 nike

如何将 Prop 填充值传递给 makeStyles 的关键帧?我必须指定初始状态才能传递 prop 吗?

它适用于颜色但不适用于填充值。

---Child component

const useStyles = makeStyles({
progress: {
animation: '$load 3s normal forwards',
background: props => props.color,
width: '0',
},

"@keyframes load": {
"0%": { width: "0" },
"100%": { width: props => props.fillvalue}
}
});

export default function ProgressBar(props) {
const propsStyle = {color: props.color, fillvalue: props.fillvalue}
const classes = useStyles(propsStyle)

return(
<div>
<div className={classes.progress}>
</div>
</div>
);
}


---Parent

function App() {
return (
<div>
<ProgressBar color="#000" fillvalue = "60%"/>
</div>
);
}

最佳答案

答案是 - 你不能(至少现在)。这是撰写本文时的错误(截至撰写本文时,MUI 的最新版本是 v4.11.0),并且得到了一位 MUI 贡献者的承认。您可以在此问题上跟踪其进度:https://github.com/mui-org/material-ui/issues/21011

您将不得不寻找其他方式在不使用关键帧的情况下传递这些 Prop

const useStyles = makeStyles({
progress: {
height: "10px",
background: (props) => props.color,
width: (props) => props.fillvalue,
transition: "width 3s"
}
});

function ProgressBar(props) {
const propsStyle = { color: props.color, fillvalue: props.fillvalue };
const classes = useStyles(propsStyle);

return (
<div>
<div className={classes.progress}></div>
</div>
);
}

function App() {
const [fill, setFill] = React.useState("0%");

return (
<div>
<button onClick={() => setFill("0%")}>0%</button>
<button onClick={() => setFill("60%")}>60%</button>
<ProgressBar color="#aaa" fillvalue={fill} />
</div>
);
}

ReactDOM.render(<App/>,document.getElementById("root"));
<body>
<div id="root"></div>

<script src="https://unpkg.com/react@16/umd/react.development.js"></script>
<script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>
<script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script>
<script src="https://unpkg.com/@material-ui/core@latest/umd/material-ui.development.js"></script>

<script type="text/babel">
const { makeStyles } = MaterialUI;
</script>
</body>

关于reactjs - 在 makeStyles 关键帧动画中传递 Prop ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64234091/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com