![]() |
暴走的钥匙 · 南通新机场,为什么又引起热议?等等,为什么要 ...· 5 月前 · |
![]() |
儒雅的钢笔 · 人参王国 - 萌娘百科 万物皆可萌的百科全书· 6 月前 · |
![]() |
调皮的小蝌蚪 · 武侠小说10大历史谜团:项少龙是项羽老爹,乾 ...· 6 月前 · |
![]() |
腼腆的圣诞树 · 哥布林繁殖牧场游戏在哪里_头条· 8 月前 · |
我想用下面的方法从query params创建一个url:
router.push(
pathname: '/cars',
query: colors + type + price,
undefined,
shallow: true,
);
const colors = ['red', 'blue', 'yellow']; //the arrays could contain many others values
const type = ['offroad', 'sport'];
const price = 'hight' //this is a string
我想实现,当我点击触发
router.push
的按钮时,下一步:
/cars?color=red,yellow,blue&type=offroad,sport&price=hight
https://nextjs.org/docs/api-reference/next/router#with-url-object
你试试这个
router.push({
pathname: '/cars',
query: {
colors: colors.join(","),
types: types.join(",")
})
您可以简单地这样做:
const router = useRouter();
router.push(
pathname: '/cars',
query: {
colors,
type,
price,
undefined,
shallow: true,
},
);
根据Next/Router类型,查询类型为
ParsedUrlQuery
类型,相当于
interface ParsedUrlQuery extends NodeJS.Dict<string | string[]> { }
也就是说,next/router能够同时解析字符串和字符串数组