首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用nuxt.js重写url

用nuxt.js重写url
EN

Stack Overflow用户
提问于 2020-06-09 14:26:55
回答 2查看 2.5K关注 0票数 0

如何用Nuxt.js重写urls?我想重写这个:mywebsite/user/1m̀ywebsite/user/alex

如果有人有答案,请告诉我,谢谢

EN

回答 2

Stack Overflow用户

发布于 2020-06-10 03:49:54

您可以使用在/user/1中声明的middleware配置将middleware重定向到<rootDir>/pages/user/_id.vue。注意,middleware方法接收一个context参数,其中包含两个在您的情况下特别有用的属性:

<rootDir>/pages/user/_id.vue__中的示例用法:

代码语言:javascript
运行
复制
<script>
export default {
  middleware({ params, redirect }) {
    if (params.id === '1') {
      redirect('/users/alex')
    } else {
      redirect('/users/bob')
    }
  }
}
</script>
票数 2
EN

Stack Overflow用户

发布于 2020-12-28 13:43:05

有一个Nuxt.js重定向模块。

链接在这里

但我认为,由于不建议您尝试“重写”URL,您要做的是更改URL的标识符,因此API从ID中找到用户的用户名或名称。

在这个场景中,您必须修改指向用户的链接并设置如下内容。

代码语言:javascript
运行
复制
<nuxt-link :to="`/user/${currentUser.username}`">My Profile</nuxt-link>

这将是一个类似于"/ user /david“的链接,然后在用户配置文件页面中,您必须使用asyncData来使用用户名而不是ID来获取用户配置文件。

当然,您还必须为此修改后端或API。

我已经为你做了一个代码沙箱,在这里你会看到我在说什么。

两种选择都试一试。

CodeSandbox

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62284937

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档