Vous ne devez pas utiliser la Route ou withRouter() à l'extérieur d'un Routeur lors de l'utilisation de réagir-routeur 4 et de style-composant à réagir
Je suis en train de construire mon premier site portfolio et est resté coincé dans le routage à l'aide de réagir-routeur-dom 4.2.2 et de style-composants 2.2.3.
message d'erreur: Vous ne devriez pas utiliser la Route ou withRouter() à l'extérieur d'un Routeur
J'ai aussi essayer d'utiliser le Lien au lieu de NavLink, mais a reçu l'erreur de trop(Vous ne devriez pas utiliser des liens à l'extérieur d'un Routeur)
Quelqu'un m'aider s'il vous plaît.
navigationBar.js
import React, { Component } from 'react';
import { NavigationContainer, NavItem } from './navigationBar.style';
class NavigationBar extends Component {
render() {
return (
<NavigationContainer>
<NavItem to="/">Home</NavItem>
<NavItem to="/projects">Project</NavItem>
</NavigationContainer>
);
}
}
export default NavigationBar;
navigationBar.style.js
import styled from 'styled-components';
import { Flex, Div } from 'theme/grid';
import { NavLink } from 'react-router-dom';
export const NavigationContainer = styled(Flex)`
position: fixed;
right: 20px;
top: 0.5em;
font-size: 1em;
`;
export const NavItem = styled(NavLink)`
position: relative;
padding-left: 10px;
cursor: pointer;
`;
OriginalL'auteur JongHun Lee | 2017-11-15
Vous devez vous connecter pour publier un commentaire.
Assurez-vous d'envelopper le principal réagir rendre le code dans le Routeur. Par exemple, avec réagissent-dom-vous besoin d'envelopper l'application dans le Navigateur-Routeur. Si c'est un Udacity projet, c'est typiquement le index.js fichier.
OriginalL'auteur Bruce Seymour
Eh bien, vous êtes à l'aide d'un NavLink à l'extérieur de la BrowserRouter/HashRouter (ce que vous utilisez)
Vous l'avez dit vous-même
Assurez-vous que vous avez la structure comme ceci
Vous devez toujours vous rendre à l'intérieur d'un Routeur
Routeur peut avoir qu'un seul élément enfant
Je sais. Mais je suis juste en démontrant qu'il doit encapsuler ses composants à l'intérieur du Routeur
vous avez sauvé ma journée
OriginalL'auteur Lokuzt