问题标签 [next-router]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1867 浏览

reactjs - Next.js 添加 slug/params 以清理 URL

我在“页面”文件夹中有一个带有干净 URL 的结构,如下所示......

如果我router.push使用它,我会像这样使用它来访问该页面......

这很好用,但现在我想向该 URL 添加一个查询参数(用于过滤器),我该怎么做?

我试过这个...

但这不起作用,我想知道如何做到这一点。

0 投票
2 回答
2450 浏览

reactjs - 在 shopify next js 应用程序中重新加载页面而不是路由

我按照Shopify 的指南,直到第 4 步结束,开发了一个 Next JS 应用程序,并且我设置了两个页面(嵌入式应用程序导航),主页和 Page1。现在,当我单击打开两个页面时,应用程序正在重新加载而不是路由...

你可以在这里看到闪烁的问题 - https://youtu.be/45RvYgxC7C0

对此的任何帮助将不胜感激。

_app.js

主页.js

Page1.js

0 投票
3 回答
6820 浏览

next.js - nextJS SSR useRouter() 在刷新页面时不起作用

我在我的项目中使用 nextJS SSR。现在,当我尝试使用以下代码获取页面参数时,它显示未定义。

当页面从其他页面路由时它可以工作(没有使用“下一个/链接”重新加载页面)但是当我刷新页面时它不起作用。有人可以帮忙吗?

0 投票
2 回答
1020 浏览

reactjs - NextJS 中路由器和链接的典型区别

我是 NextJS 的新手。我想知道下一个/路由器和下一个/链接之间的典型变化和用例。

我应该在各种场景中使用哪一个?哪个做什么?例如,如果我想加载共享组件或在服务器端呈现的页面之间导航。另外,如果我使用普通的“a”标签调用页面或使用链接/路由器来实现相同的目的,那么有什么区别。

0 投票
3 回答
4833 浏览

javascript - 在 React 组件之外使用 NextRouter

我有一个自定义钩子,可以检查您是否已登录,如果未登录,则将您重定向到登录页面。这是我的钩子的伪实现,假设您没有登录:

但是当我使用这个钩子时,我得到了以下错误:

错误:未找到路由器实例。您应该只在应用程序的客户端内使用“next/router”。https://err.sh/vercel/next.js/no-router-instance

我检查了错误中的链接,但这并没有真正的帮助,因为它只是告诉我将push语句移动到我的渲染函数中。

我也试过这个:

但这只会导致相同的错误。

有没有办法允许在 next.js 中的 React 组件之外进行路由?

0 投票
1 回答
1556 浏览

reactjs - Next.js - 如何在 url 中显示帖子名称而不是 id 并使其唯一?

我搜索了这个,但我只能在 Laravel 和 PHP 中找到示例,我需要知道如何使用 Next.js 执行此操作。

我所知道的是,我可以像这样在 Next.js 中以通常的方式执行动态路由......

/pages/post/[postId]例如,这将转化/pages/post/23435为,这样如果有人拥有我可以抓取的 URL [postId]router.query并且可以向用户显示正确的帖子,这很容易。

但是如果我想在 URL 中显示帖子名称而不是 id 怎么办?就像 Udemy 在单词之间使用破折号一样......

同时,如果有人有那个 URL,我仍然可以向他们显示正确的帖子吗?

我知道我可以/pages/post/[postName]在 URL 中显示帖子名称,但这不是唯一的,也无法显示正确的帖子。

我怎样才能做到这一点?

0 投票
1 回答
1360 浏览

reactjs - 如何在 Next.js 应用程序中的特定 URL 处提供“.html”?

我有一个“.html”文件,我需要在我的 Next.js 应用程序中以特定路线提供服务,就像这样......

/pages/customr-route-name/my-html-file.html

所以如果我去我的网站并输入http://example.com/custom-route-name/my-html-file.html我可以看到它

我怎样才能在 Next.js 中做到这一点?

0 投票
1 回答
200 浏览

reactjs - 使用带有 URL 对象的 Next.js 路由器推送时出现意外行为

根据 Next.js文档,我可以使用带有 URL 对象的路由器推送功能来路由动态路径,如下例所示:

但是,当我尝试使用此功能时,Next.js 路由器将以下内容发送/post/[pid]?pid=1到浏览器(我们以 post id 为 1 为例),即路由器不会将 替换[pid]为查询对象的值。

有人能帮我吗?

0 投票
1 回答
776 浏览

javascript - 在 Next.js 中进行客户端重新加载和更改 url

我的 Next js 组件之一中有以下代码片段-:

在应用程序中,我在“/profile”页面上,然后单击注销按钮。我想要做的是将url更改回主页'/'并进行客户端重新加载。我知道客户端重新加载可以使用 router.reload() 来完成。但是将它与 router.push() 一起使用不会更改 url 和页面本身。

谁能解释我必须在做什么或想错了什么?

0 投票
1 回答
2805 浏览

next.js - 从“下一个/路由器”导入路由器可以吗?

Next.js 文档提到了两种访问router对象的方法:useRouter功能组件和withRouter基于类的组件。

但是,它没有提到我遇到过几次的东西,即Router按如下方式访问的对象,例如:

以这种方式使用是否正确Router?为什么 Next.js 文档没有提到它?