1

このように「pages」フォルダにきれいなURLを持った構造になっているのですが……

/pages/items/[pageNumber]/index.tsx

そして、私が使用router.pushする場合、このように使用してそのページにアクセスします...

router.replace("/items/[pageNumber]", "/items/1")

それはうまく機能しますが、その URL にクエリ パラメータ (フィルタ用) を追加したいのですが、どうすればよいですか?

私はこれを試しました...

router.push(`/items/[pageNumber]/`, `/items/1/?${filterParams}`, { shallow: true });

しかし、それはうまくいかないので、どうすればいいのか疑問に思っています。

4

1 に答える 1

1

こんな風に使うと

router.push(`/items/[pageNumber]/`, `/items/1/?${filterParams}`, { shallow: true });

クエリ パラメータをページに渡しているわけではなく、アドレス バーに表示しているだけだと思います。

このようなものはどうですか:

router.push({
  pathname '/items/[pageNumber]/',
  query: {
    param1: 'yes',
  },
}, {
  pathname: '/items/1/',
  query: {
    param1: 'yes',
  },
});

ケースの一部を更新することを忘れないqueryでください。

于 2020-08-11T14:54:20.057 に答える