Jos*_*eph 6 reactjs react-router react-router-dom react-material
如何将路由器链接放在 reactjs 按钮中?
我在下面尝试了这两个:第一个更改颜色,而第二个更改颜色,我不喜欢它,因为它正在重新加载页面。
第一的
<Link to="/settings">
<IconButton color="inherit">
<SettingsIcon />
</IconButton>
</Link>
Run Code Online (Sandbox Code Playgroud)
第二
<IconButton color="inherit" href="/settings">
<SettingsIcon />
</IconButton>
Run Code Online (Sandbox Code Playgroud)
pio*_*ros 10
@BeHappy 的解决方案很好,但您可以使用组合来实现。无需使用钩子。
import React from 'react';
import { Link } from 'react-router-dom';
import { IconButton } from '@material-ui/core';
import SettingsIcon from '@material-ui/icons/Settings';
export default function Component() {
return (
<IconButton component={Link} to="/setting">
<SettingsIcon />
</IconButton>
);
}
Run Code Online (Sandbox Code Playgroud)
import React from "react";
import { useHistory } from "react-router-dom";
export default function Component() {
const history = useHistory();
return (
<IconButton color="inherit" onClick={() => history.push("/setting")}>
<SettingsIcon />
</IconButton>
);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2222 次 |
| 最近记录: |