为什么<link to =“ ...” />不起作用,而push()在生产环境中起作用?

时间:2018-10-15 17:41:33

标签: reactjs

在我的React应用程序中,我使用两种方法来重定向网址。

一个是组件,类似于

import { Link } from "react-router-dom";

<Link to={{ pathname: "/search" }}>
  <img
    src={image.image}
    alt="product"
    className="slick-image"
  />
</Link>

另一个是Redux中的push(),就像

import { push } from "react-router-redux";

push(`search/${searchTerm}`)

它们在本地环境中都运行良好,但是在生产环境中,<Link>根本无法工作,而push()则运行得很好。

有人知道为什么吗?

1 个答案:

答案 0 :(得分:0)

我认为您需要使用withRouter来包装组件Link

import { Link } from "react-router-dom";
class SomeComponent extends React.Component {
 ...
 ...
render () {
  <div>
    <Link to={{ pathname: "/search" }}>
      <img
       src={image.image}
       alt="product"
       className="slick-image"
       />
    </Link>
  </div>
  }
} 
export default withRouter(SomeComponent);