You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何移除useLocation获取的pathname中的斜杠/

移除路径开头斜杠以展示页面名称

这里有几种简单的方法处理useLocation返回的pathname,去掉开头的斜杠:

方法1:正则替换(适配多斜杠场景)

用正则匹配开头的一个或多个斜杠,替换为空字符串,能处理/mypage、//mypage这类情况:

import { useLocation } from 'react-router-dom';

function PageHeader() {
  const { pathname } = useLocation();
  // 移除开头所有斜杠
  const pageName = pathname.replace(/^\/+/, '');
  return <div>我的页面:{pageName}</div>;
}

方法2:字符串截取(适合单斜杠场景)

如果确定路径只会以单个斜杠开头,直接从索引1开始截取字符串即可。若路径是根路径/,可以设置默认值:

import { useLocation } from 'react-router-dom';

function PageHeader() {
  const { pathname } = useLocation();
  // 从第2个字符开始截取,根路径时显示"首页"
  const pageName = pathname.slice(1) || '首页';
  return <div>我的页面:{pageName}</div>;
}

方法3:拆分路径取最后一段(适合多级路径)

如果需要的是路径的最后一部分(比如/user/profile要显示profile),可以拆分路径后取最后一段:

import { useLocation } from 'react-router-dom';

function PageHeader() {
  const { pathname } = useLocation();
  // 拆分路径后取最后一段,根路径时显示"首页"
  const pageName = pathname.split('/').pop() || '首页';
  return <div>我的页面:{pageName}</div>;
}

内容的提问来源于stack exchange,提问作者hermionegrange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 00:35:29