Url参数未显示Reactjs

问题描述 投票:0回答:2

这是我的customers.jsx文件customers.jsx是主文件在这里主要代码就在那里

<Route path="/data/:gender1"
       exact
       render={() => {
           return (
               <div >
                   <Customers2/>
               </div>
           );
       }}
/>

这是我的customers2.jsx文件

import React, { Component } from 'react';
import {
    BrowserRouter as Router,
    Route,
    Link,
    NavLink,
    Redirect
} from 'react-router-dom';
import {browserHistory} from 'react-router';

class Customers2 extends Component {
    constructor() {
        super();

        console.log(this);
    }


    render() {
        console.log("ss" );
        console.log(this.props);
        return (
            <div>

            </div>            
        );
    }
}

export default Customers2;

如果我去localhost:3000 / data / Male

在控制台中我没有看到任何道具与数据有什么不对?

reactjs redirect
2个回答
0
投票
<Route 
   path="/data/:gender1" 
   exact 
   render={props) => {
       return(
          <div>
            <Customers2 {...props} />
          </div>
        );
    }}
/>

您还需要将react-router的props传递给组件。


0
投票

道具从render传递,您需要明确传递:

<Route path="/data/:gender1" exact render={({match) => 
   <Customers2 gender={match.params.gender1} />
} />

有关更多信息,请参阅the documentation on route propsmatch object

© www.soinside.com 2019 - 2024. All rights reserved.