传递参数组件的jsx文件:

import React, { Component } from 'react'import { Switch,Route,Link } from 'react-router-dom'import Detail from './Detail'export default class Message extends Component {  state ={    messageArr :[      {id:'01',title:'音讯1'},      {id:'02',title:'音讯2'},      {id:'03',title:'音讯3'}    ]  }  render() {    const {messageArr} = this.state    return (      <div>        <ul>          {            messageArr.map((msgObj) =>{              return (                <li key={msgObj.id}>                  {/* 向路由组件传递 params 参数 */}                  {/* <Link to={`/home/message/detail/${msgObj.id}/${msgObj.title}`}>{msgObj.title}</Link> */}                  {/* 向路由组件传递 search 参数 */}                  <Link to={`/home/message/detail/?id=${msgObj.id}&title=${msgObj.title}`}>{msgObj.title}</Link>                </li>              )             })          }        </ul>        <hr/>        {/* 注册路由*/}        <Switch>          {/* 申明接管 params */}          {/* <Route path='/home/message/detail/:id/:title' component={Detail}></Route> */}                    {/* search 参数无需申明接管 */}          <Route path='/home/message/detail' component={Detail}></Route>        </Switch>      </div>    )  }}

接管参数组件的jsx文件:

import React, { Component } from 'react'import qs from 'querystring'const detailData = [  {id:'01',content:'你好,中国'},  {id:'02',content:'你好,上海'},  {id:'03',content:'你好,北京'}]export default class Detail extends Component {  render() {    // 接管 params 参数    // const {id,title} = this.props.match.params    // 接管 search 参数    const {search} = this.props.location    const {id,title} = qs.parse(search.slice(1))    // 查找对应id 的 content    const findResult = detailData.find((detailObj)=>{      return detailObj.id === id    })    return (      <div>          <li>ID:{id}</li>          <li>Title:{title}</li>          <li>Content:{findResult.content}</li>      </div>    )  }}