【发布时间】:2021-04-01 15:31:27
【问题描述】:
这是链接在浏览器中未激活时的代码: 我想我可能错误地使用了 Link 组件和 Route 组件。 此应用程序的所有组件均已正确编写并以其他配置呈现,但我想使用工具栏组件并能够通过路由等激活此链接。
import React from 'react';
import PropTypes from 'prop-types';
import { makeStyles } from '@material-ui/core/styles';
import Button from '@material-ui/core/Button';
import IconButton from '@material-ui/core/IconButton';
import SearchIcon from '@material-ui/icons/Search';
import Typography from '@material-ui/core/Typography';
import Link from '@material-ui/core/Link';
import Composers from '../components/Composers';
import Composer1 from '../components/Composer1';
import Composer2 from '../components/Composer2';
import QuienesSomos from '../components/QuienesSomos';
import { HashRouter as Router, Route} from 'react-router-dom';
import Blog2 from '../components/Blog2'
import ForumContainer from '../containers/ForumContainer'
import HeaderContainer from '../components/HeaderContainer'
import Toolbar from '@material-ui/core/Toolbar';
import NavBar from '../components/NavBar'
import { CenterFocusStrong } from '@material-ui/icons';
import { Switch} from 'react-router-dom'
const useStyles = makeStyles((theme) => ({
toolbar: {
borderBottom: `1px solid ${theme.palette.divider}`,
},
toolbarTitle: {
flex: 1,
},
toolbarSecondary: {
justifyContent: 'space-between',
overflowX: 'auto',
},
toolbarLink: {
padding: theme.spacing(1),
flexShrink: 0,
},
div: {
justifyContent: 'center'
}
}));
export default function Header(props) {
const classes = useStyles();
const { sections, title } = props;
return (
<React.Fragment>
<Toolbar className={classes.toolbar}>
<Button size="small">Subscribe</Button>
<Typography
component="h2"
variant="h5"
color="inherit"
align="center"
noWrap
className={classes.toolbarTitle}>
{title}
</Typography>
<IconButton>
<SearchIcon />
</IconButton>
<Button variant="outlined" size="small">
Sign up
</Button>
</Toolbar>
<Toolbar component="nav" variant="dense" className={classes.toolbarSecondary}>
<Link to='/quienessomos'> Quienes Somos </Link>
<Link to='/compositores'> Compositores </Link>
<Link to='/blog'> Blog </Link>
<Link to='/forum'> Forum </Link>
<Switch>
<Route exact path='/quienessomos'> <QuienesSomos/></Route>
<Route exact path='/compositores'> <Composers/></Route>
<Route exact path='/composer1'> <Composer1/></Route>
<Route exact path='/composer2'> <Composer2/></Route>
<Route exact path='/blog'> <Blog2/></Route>
<Route exact path='/forum'> <ForumContainer/></Route>
</Switch>
</Toolbar>
</React.Fragment>
);
}
Header.propTypes = {
sections: PropTypes.array,
title: PropTypes.string,
};
【问题讨论】:
-
“它不活跃”是什么意思?正常情况的屏幕截图会有所帮助
-
我的意思是链接出现在网页中,但由于某种原因,当点击它并没有连接你并将你转移到适当组件的适当页面。
-
我认为这与定义链接的时间/地点有关。如果您按照 Airat 建议的方式实施它,您应该能够解决此问题。