前端城市地址根据最后一级倒推,获取各层级id的方法

前端城市地址根据最后一级倒推,获取各层级id的方法

这个需要是后端返回最后一级地址的id,前端要去获取上级或上上级的id,实现数据返显。这里写了一个通用的方法,后面在任何地方直接调用即可。

复制代码
/**
 * 根据最终区域code,获取省市区区域code路径数组
 * regionDatas 地址数组
 * @param finalCode 区域code,例如 "110101" 表示北京市朝阳区东城区
 * @returns string[] 省市区区域code路径数组,例如 ["110000", "110100", "110101"] 表示北京市朝阳区东城区
 */
export const getRegionArrByFinalCode = (finalCode: string | number, regionDatas: any[]) => {
  if (!Array.isArray(regionDatas) || !regionDatas.length) return [];
  let result: string[] = [];
  const dfs = (data: any[], path: string[] = []) => {
    for (const item of data) {
      if (!item) continue;
      const currentPath = [...path, item.region];
      if (item.region == finalCode) {
        result = currentPath;
        return true;
      }
      if (item.children && dfs(item.children, currentPath)) return true;
    }
    return false;
  };
  dfs(regionDatas);
  return result;
};
相关推荐
海石29 分钟前
📱随时随地大小编:TraeSolo 移动端初体验
前端·ai编程·trae
爱滑雪的码农2 小时前
详细说说React大型项目结构以及日常开发核心语法
前端·javascript·react.js
七牛开发者3 小时前
HTML is the new Markdown:来自 Claude Code 团队的实践
前端·人工智能·语言模型·html
@大迁世界3 小时前
43.HTML 事件处理和 React 事件处理有什么区别?
前端·javascript·react.js·html·ecmascript
CloneCello3 小时前
AI时代程序员认知调整指南
前端
ZC跨境爬虫4 小时前
跟着 MDN 学 HTML day_38:(DocumentFragment 文档片段接口详解)
前端·javascript·ui·html·音视频
@大迁世界5 小时前
41.ShadCN 是什么?它如何和 Tailwind CSS 集成,从而更容易构建可访问且可自定义的 React 组件?
前端·javascript·css·react.js·前端框架
千叶风行5 小时前
Text-to-SQL 技术设计与注意事项
前端·人工智能·后端
软件开发技术深度爱好者5 小时前
HTML5+JavaScript读取DOCX 文档完整内容
前端·html5
幽络源小助理6 小时前
苹果CMS V10 MXPro V4.5模版下载, 自适应视频主题源码, 幽络源源码
前端·开源·源码·php源码