Next.js 添加 slug/params 清理 URL
Next.js Add slug/params to clean URL
我在“页面”文件夹中有一个干净的结构 URL,就像这样...
/pages/items/[pageNumber]/index.tsx
如果我使用 router.push
我会像这样使用它来访问该页面 ...
router.replace("/items/[pageNumber]", "/items/1")
效果很好,但现在我想向该 URL 添加一个查询参数(用于过滤器),我该怎么做?
我试过了...
router.push(`/items/[pageNumber]/`, `/items/1/?${filterParams}`, { shallow: true });
但这行不通,我想知道该怎么做。
当你这样使用它时
router.push(`/items/[pageNumber]/`, `/items/1/?${filterParams}`, { shallow: true });
你没有将查询参数传递给页面,我猜你只是在地址栏中显示它们。
这样的事情怎么样:
router.push({
pathname '/items/[pageNumber]/',
query: {
param1: 'yes',
},
}, {
pathname: '/items/1/',
query: {
param1: 'yes',
},
});
不要忘记为您的案例更新 query
部分。
我在“页面”文件夹中有一个干净的结构 URL,就像这样...
/pages/items/[pageNumber]/index.tsx
如果我使用 router.push
我会像这样使用它来访问该页面 ...
router.replace("/items/[pageNumber]", "/items/1")
效果很好,但现在我想向该 URL 添加一个查询参数(用于过滤器),我该怎么做?
我试过了...
router.push(`/items/[pageNumber]/`, `/items/1/?${filterParams}`, { shallow: true });
但这行不通,我想知道该怎么做。
当你这样使用它时
router.push(`/items/[pageNumber]/`, `/items/1/?${filterParams}`, { shallow: true });
你没有将查询参数传递给页面,我猜你只是在地址栏中显示它们。
这样的事情怎么样:
router.push({
pathname '/items/[pageNumber]/',
query: {
param1: 'yes',
},
}, {
pathname: '/items/1/',
query: {
param1: 'yes',
},
});
不要忘记为您的案例更新 query
部分。