history.push 重定向覆盖我设置为不同的路径
history.push redirect overrides the the path I set to different one
我有这个小部件
整个东西都可以点击到某个路径。我在里面放了两个按钮,编辑和删除
删除工作正常,它执行一个传奇。现在编辑按钮我希望它是一个 link 重定向到某些 URL。我不能这样做,因为我不能把 <a>
放在 <a>
里面。 React 向我显示警告。
所以我使用了一个重定向按钮:
1.
import {Link, useHistory} from "react-router-dom";
const history = useHistory();
<button onClick = {() => history.push(`/domain/${props.domain.id}/edit`)}>
edit
=</button>
因为我用的是connected-react-router,我也试过
import {history} from '../../../redux/store'; <button onClick = {() => history.push(
/domain/${props.domain.id}/edit)}
他们都有相同的行为:
您可以使用“/domain/5f95554624aa9a0006351825”覆盖重定向,这是外部 link.
的 link
即使我将 url 更改为类似“/users”的内容,它仍然会被覆盖。
我只想将用户重定向到简单 URL。我该怎么做?
您可以使用 preventDefault 来停止 Link
的默认行为。
<Link to="/xyz">
Link
<button
onClick={(e) => {
history.push(`/domain/${props.domain.id}/edit`)
e.preventDefault()
}}
>
edit
</button>
</Link>
我有这个小部件
整个东西都可以点击到某个路径。我在里面放了两个按钮,编辑和删除
删除工作正常,它执行一个传奇。现在编辑按钮我希望它是一个 link 重定向到某些 URL。我不能这样做,因为我不能把 <a>
放在 <a>
里面。 React 向我显示警告。
所以我使用了一个重定向按钮:
1.
import {Link, useHistory} from "react-router-dom";
const history = useHistory();
<button onClick = {() => history.push(`/domain/${props.domain.id}/edit`)}>
edit
=</button>
因为我用的是connected-react-router,我也试过
import {history} from '../../../redux/store'; <button onClick = {() => history.push(
/domain/${props.domain.id}/edit)}
他们都有相同的行为:
您可以使用“/domain/5f95554624aa9a0006351825”覆盖重定向,这是外部 link.
的 link即使我将 url 更改为类似“/users”的内容,它仍然会被覆盖。
我只想将用户重定向到简单 URL。我该怎么做?
您可以使用 preventDefault 来停止 Link
的默认行为。
<Link to="/xyz">
Link
<button
onClick={(e) => {
history.push(`/domain/${props.domain.id}/edit`)
e.preventDefault()
}}
>
edit
</button>
</Link>