React Router HashRouter 插入一个 ?在 url 中的 # 之前

React Router HashRouter inserting a ? before # in url

我在 Chrome 上使用 react/redux/react-router 时出现一些奇怪的行为。我有一个看起来像这样的组件:

const PageHeader = withRouter( props => 
    <Form plain={true} onSubmit={() => props.history.push("/search")} >

    {/*component stuff goes here */}
)

当我在 Firefox 上提交表单时,它会将我带到正确的 url,即 http://myip/#/search. However on Chrome it brings me to the following url: http://myip/?#/search,由于某种原因它也在刷新应用程序,所以我失去了商店中的所有状态。以前有人观察过这种行为吗?

(还有我正在使用的表单组件 grommet

尝试通过将表单更改为

来抑制默认提交行为
<Form plain={true} 
    onSubmit={(e) => { e.preventDefault(); props.history.push("/search")}} >