React styled-Components Navbar стиль не работает - PullRequest
0 голосов
/ 24 апреля 2019

Я пытаюсь применить отступ / маржа на панели навигации, чтобы между ссылками было некоторое пространство.

Я попытался переименовать const, но он конфликтует сам, потому что я не могу использовать идентификатордважды в одном файле.Ошибка синтаксического анализа: идентификатор «Маршрут» уже был объявлен.

import React, { Component } from 'react';
import { BrowserRouter, Route, Switch } from "react-router-dom";


import Home from "./components/Home";
import Projects from "./components/Projects";
import About from "./components/About";
import Contact from "./components/Contact";
import Error from "./components/Error";
import Navigation from "./components/Navigation";


class App extends Component {
  render() {
    return (
      <BrowserRouter>
            <Navigation />
            <Switch>
                <Route path="/" component={ Home } exact />
                <Route path="/Projects" component={ Projects } />
                <Route path="/About" component={ About } />
                <Route path="/Contact" component={ Contact } />
                <Route component={ Error } />
            </Switch>
      </BrowserRouter>
    );
  }
}


export default App;
import React from 'react';
import { NavLink } from "react-router-dom";
import { NavItem} from '../style/Navigation.style';



const Navigation = () => {
    return (
        <NavItem>
            <NavLink to="/">Home</NavLink>
            <NavLink to="/Projects">Projects</NavLink>
            <NavLink to="/Contact">Contact</NavLink>
            <NavLink to="/About">About</NavLink>
        </NavItem>
    );
};

export default Navigation;
import styled from 'styled-components';
import {NavLink} from "react-router-dom";


export const NavItem = styled(NavLink)`
  Display: Flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  text-align: center;
  Margin: 10px;
  padding: 10px;
`;
import React from "react";

const Home = () => {
    return (
        <div>
            <p>Home</p>
        </div>
    );
};

export default Home;

[Вот так это выглядит] https://i.stack.imgur.com/X4pKv.png

Ответы [ 2 ]

0 голосов
/ 25 апреля 2019

Я пытался добавить классы, также раздел, но я не могу заставить его работать, я наткнулся на эту проблему на Github , не могу добавить отступы на мою панель навигации? Я застрял и очень запутался.

Заполнение работает, но не для каждого компонента. Это переместит весь раздел. Смотрите здесь

import styled from 'styled-components';


export const NavItem = styled.section`
  display: flex;
  padding: 4em;
`;
0 голосов
/ 24 апреля 2019

Основная проблема заключается в том, что вы пытаетесь стилизовать Navlink, а затем пытаетесь отобразить Navlinks как дочерние элементы 'style Navlink' ...

import styled from 'styled-components';

export const NavItem = styled.div` // just style a div here... (or section etc...)
  display: flex;
  justify-content: space-around; // this should give you an equal emaout of space between the links... 
  align-items: center; 
`;
...