Javascript Next.js-React.js-express:为什么每次使用';浅层布线';?

Javascript Next.js-React.js-express:为什么每次使用';浅层布线';?,javascript,reactjs,express,nextjs,server-side-rendering,Javascript,Reactjs,Express,Nextjs,Server Side Rendering,我正在尝试为我的站点创建筛选功能,并希望将参数推送到我可以共享“筛选”url的url 从“下一个/路由器”导入路由器 . . changeurl = () => { console.log('----add params to url----') const path = Router.asPath const newPath = `${path}/?param=hi` // Router.replace(newPath , newPath, { shallow: true

我正在尝试为我的站点创建筛选功能,并希望将参数推送到我可以共享“筛选”url的url

从“下一个/路由器”导入路由器

.
.
changeurl = () => {
  console.log('----add params to url----')
  const path = Router.asPath
  const newPath = `${path}/?param=hi`
  // Router.replace(newPath , newPath, { shallow: true })
  Router.push(newPath, newPath, {
    shallow: true
  })
}
.
.

如果我理解正确,
getInitialProps()
-当
Router.push()
/
Router.replace()
shall
-选项设置为true时,不应再次调用函数?

正确。这应该行得通。不过,问题出在哪里呢?我使用nextJs动态路由(
import{Router}from'routes'
),所以API看起来像这样-
Router.pushRoute(route,params,options)
-->
Router.pushRoute(newPath,{shall:true})