react路由:域名如何实现直接跟用户名

发布于 2022-09-12 04:44:18 字数 203 浏览 16 评论 0

如:www.baidu.com/zhangsan,www.baidu.com/liuliu,这样的形式,我知道现在好多网站是使用类似:www.baidu.com/people/zhangsan或www.baidu.com/u/liuliu,但是我觉得好丑,没有上面形式美观,而且github,facebook和twitter都是上面的实现方式,因此想问下大家这种形式如何在react路由中实现

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

自由范儿 2022-09-19 04:44:18

使用next.js的动态路由就解决了,哈哈,
文件夹目录:pages/[username]就可以了,下面是页面代码,这样就可以获取用户名,并且判断是否有该用户,没有则跳转到404,这就是我想要的,next.js你们值得拥有

import { useRouter } from "next/router";
import DefaultErrorPage from "next/error";

const Settings = () => {
  const router = useRouter();
  const { query } = router;

  if (JSON.stringify(query) != "{}") {
    if (query.username != "zhangwei") {
      return <DefaultErrorPage statusCode={404} ></DefaultErrorPage>;
    } else {
      return <div>{query.username}</div>;
    }
  } else {
    return <>Loading</>;
  }
};

export default Settings;
[浮城] 2022-09-19 04:44:18

React-router本身是支持的

<Route path="/users/:id">
// 就会变成 xxx.com/users/1
無心 2022-09-19 04:44:18
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文