Реагировать маршрутизатор не совпадает с базовым путем - PullRequest
0 голосов
/ 07 июня 2018

Я тренируюсь с реагирующим маршрутизатором и должен иметь :id параметр.Он совпадает с идентификатором в URL, например, /edit/2, но не с базовым регистром с /edit.

Основной файл маршрутизатора приложения

import React from 'react';
import {BrowserRouter, Route, Switch, Link, NavLink} from 'react-router-dom';
import landingPage from '../components/landingPage';
import editPage from '../components/editPage';
import createPage from '../components/createPage';
import helpPage from '../components/helpPage';
import notFoundPage from '../components/notFoundPage';
import Header from '../components/header';


const AppRouter = () => (
    <BrowserRouter>
        <div>
            <Header/>
            <Switch>
                <Route exact={true} path="/" component={landingPage}/>
                <Route path="/create" component={createPage}/>
                <Route exact={false} path="/edit/:id" component={editPage}/>
                <Route path="/help" component={helpPage}/>
                <Route component={notFoundPage}/>
            </Switch>
        </div>
    </BrowserRouter>
);

export default AppRouter;

editPage code

import React from 'react';

const editPage = (props) => {
    console.log(props)
    return (
    <div>Edit Page</div>
    );
}
export default editPage;

1 Ответ

0 голосов
/ 07 июня 2018

Если вы используете React Router> = v4, вы можете сделать необязательный параметр , добавив ? после имени параметра:

<Route exact={false} path="/edit/:id?" component={editPage}/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...