zzm*_*lqq 4 ripple reactjs material-ui
基本上就是标题。我想在我的 MUI 按钮集合上手动显示波纹效果 - 当我单击按钮时波纹效果会起作用,但我找不到以编程方式显示波纹效果的方法。
我是否需要禁用 MUI 的涟漪效果,然后制作自己的涟漪效果函数,我可以附加到该函数onClick?
{this.buttons.map((button) => (
<React.Fragment key={button.name}>
{button.render ? (
<div className="col-3">
<Button
autoFocus={true}
className="w-100 p-3"
variant="contained"
color="primary"
classes={{root: classes.button}}
disableElevation
onClick={() => {updateState(button.onClick(text))}}
>
{button.keyCode}
</Button>
</div>
) : (<></>)}
</React.Fragment>
))}
Run Code Online (Sandbox Code Playgroud)
Button在幕后ButtonBase使用的用途。TouchRipple这是定义的片段ButtonBase:
function ButtonBase(props) {
// ...
return (
<ButtonBaseRoot>
{children}
<TouchRipple ref={rippleRef} center={centerRipple} {...TouchRippleProps} />
</ButtonBaseRoot>
)
}
Run Code Online (Sandbox Code Playgroud)
没有 API 可以手动触发纹波。它在按钮内部进行处理,因此为了做到这一点,您需要创建并控制 MUI 提供的您自己的波纹组件:
import TouchRipple from '@mui/material/ButtonBase/TouchRipple';
Run Code Online (Sandbox Code Playgroud)
import TouchRipple from '@mui/material/ButtonBase/TouchRipple';
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4448 次 |
| 最近记录: |