我正在创建一个搜索页面,因此我使用 URL 参数来处理过滤器,例如产品类别和价格。
这是我当前处理添加和删除 URL 参数的方法:
function handleCheck(checked: Boolean, id: string, option) {
if (checked) {
if (router.query[id]) {
router.query[id] += `,${option.value}`;
} else {
router.query[id] = `${option.value}`;
}
}
if (!checked) {
if (router.query[id]) {
let param = router.query[id].toString();
let array = param.split(",");
array = array.filter((param) => param !== option.value);
router.query[id] = array;
}
}
router.push(router);
}
每次 URL 更改时,我都会收到以下警告: