使用react-router-dom
版本5
某个组件,在匹配<Route />
时呈现:
...
const { search } = useLocation();
const params = new URLSearchParams(search);
useEffect(() => {
console.log(search); // "?paramOne=1¶mTwo=2"
console.log(params); // {}
}, []);
...
为什么params
不显示{ paramOne: "1", paramTwo: "2" }
?
您没有使用您应该使用的URLSearchParams。你正在获取URLSearchParams对象,如果你想把它作为一个字符串,你应该记录params.toString()
查看这些链接:
- https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams/URLSearchParams
- https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams/toString