react router始终获取不到正确路由参数

仿照官方文档写的一串代码,但是就在路由传参上始终没法解析字符串中的${item}变量,总是按照字符串去解析,导致无法得到想要的正确参数,是怎么回事?
代码如下:

import React from "react"

import { Route, Link } from "react-router-dom"

// import Detail from './containers/Detail.jsx';
// import Home from './containers/Home.jsx';
// import List from './containers/List.jsx';

class RouterMap extends React.Component
{
  render()
  {
    return (      
        <div>
          <Route exact path='/' component={Home}/>
          <Route path='/list' component={List}/>
          <Route path='/detail/:id' component={Detail}/>
        </div>
    )
  }
}

const arr = [1,2,3];
const List = () => (
        <ul>
          {
            arr.map(function(item, index)
            {
              return (
                  <li key={index}>
                    <Link to={'/detail/${item}'}>to detail {item}</Link> {/*问题在这*/}
                  </li>
                );
            }.bind(this))
          }
        </ul>
  );

const Detail = ({match}) => (
      <p>Detail,url参数:{match.params.id}</p>
  )

const Home = () => (
        <div>
          <p>Home</p>
          <Link to='/list'>to List</Link>
        </div>
  )

export default RouterMap;
阅读 4.3k
1 个回答
<Link to={`/detail/${item}`}>to detail {item}</Link> {/*问题在这*/}

ES6的模板字符串的反引号

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进