Reactjs 命名路径在react路由器dom react js中不工作

Reactjs 命名路径在react路由器dom react js中不工作,reactjs,react-router,react-router-v4,react-router-dom,react-router-component,Reactjs,React Router,React Router V4,React Router Dom,React Router Component,我使用react路由器dom进行路由。这是我的代码: //图书馆 从“React”导入React; 从'react tabify'导入{Tabs,Tab}; 从'react redux'导入{connect}; 进口{ BrowserRouter作为路由器, 路线 带路由器 }从“反应路由器dom”; //组成部分 从“./containers/HomePage”导入主页; 从“/containers/PersonPage”导入PersonPage; 常量应用==> //这里我想这样使用->

我使用react路由器dom进行路由。这是我的代码:

//图书馆 从“React”导入React; 从'react tabify'导入{Tabs,Tab}; 从'react redux'导入{connect}; 进口{ BrowserRouter作为路由器, 路线 带路由器 }从“反应路由器dom”; //组成部分 从“./containers/HomePage”导入主页; 从“/containers/PersonPage”导入PersonPage; 常量应用==> //这里我想这样使用->
使用RouterConnectionApp导出默认值 我认为你们应该简单地把路由器封装在组件中。但记住把它作为最后一个条目

这里有一个文件中的示例:

import React, { Component } from 'react';
import { render } from 'react-dom';
import {
  BrowserRouter as Router,
  Route,
  Switch,
  Link,
  withRouter
} from 'react-router-dom';

const HomePage = () => (
  <div>
    <h1>HomePage</h1>
    <ul>
      <li><Link to="/user/Tom">Tom</Link></li>
      <li><Link to="/user/John">John</Link></li>
      <li><Link to="/user/Andy">Andy</Link></li>
    </ul>
  </div>
);

const PersonsPage = (props) => (
  <div>
    <h1>Profile: {props.match.params.name}</h1>
  </div>
);

class App extends Component {
  render() {
    return (
      <Switch>
        <Route exact path="/" component={HomePage}/>
        <Route exact path="/user/:name" component={PersonsPage}/>
      </Switch>
    );
  }
}

const AppWithRouter = withRouter(App);

render(
  <Router>
    <AppWithRouter />
  </Router>
  , document.getElementById('root')
);

这里有到工作版本的链接

如果您像/12一样链接组件路径,则可能无法工作。你能告诉我你是如何路由的吗?我不是在使用链接,而是出于某些原因从我的应用程序url手动传递数据。你的路由顺序是什么?你有没有试着把path=/personPage/:id的路由放在path=/:id的路由之前?我想这里不需要排序。我想知道如何使用名称而不是空路由。我想要这个,而不是这个,因为我只有2条路由,1条。默认主/主和2。个人页面/个人页面:id@Beckham_Vinoth-我编辑了我的答案。请检查now.tnx为您的努力很多兄弟:,但我需要像这样->路径应该有一些名称->/someName/:参数数据我添加前缀/user/到url,它也工作。请检查它是否在stackblitz中运行良好。让我在代码中实现这一点,并在此处更新: