对导航菜单项设置的一点思考

146 阅读1分钟

时间: 2023-02-09

故事背景:

  1. 整体背景:TOG项目,随着时间的发展,业务功能迭代与推广,产生了多行政区不同需求的多人开发场景;现下使用多个分支的方式实现同时开发,上线后合并到主分支上。
  2. 本次事故背景:负责的前端开发G在入口文件中,添加了新的角色区域属性判断,但是没有完全分析清楚所有的可能性,导致其他分支的用户全都被推送到本区域的页面中来了。产生的影响是,区域功能错乱。
  3. 难点:多人同时开发,无法直接修改框架性文件的代码;分支众多,展示的导航名称,与链接跳转由前端判断,且判断维度众多,例如当前用户的角色,用户区域信息,用户机构信息等,判断值语义不很明确直接用数字作为判断依据。

事故联想-技术向

  1. 链接在html 中直接使用 a 标签 vs 使用点击事件在js中处理?
  2. 涉及内容点: 1.当前导航菜单是否展示 2. 展示后,菜单跳转的链接绑定
  3. 方案:
  • 简单的页面跳转,直接在标签中,使用 "href" 来实现
  • 复杂的功能,或者说,需要前端来逻辑判断跳转路由的,包括但不仅限于当前账号的角色,所属区域信息等
  • 可以采用navItem = {key: isShow:false, url:'' }的格式来控制,以增加可拓展性
  1. 拓展:
    • navItem的默认值的设置
    • 设置导航栏组为 数组 vs 对象