没腿的鸟 发表于 5 天前

一个列表页面,低级中级高级前端之间区别在哪

你是不是也写过 20+ 个中后台列表页,却总觉得跳不出 CRUD?你以为你是高级了,其实你只是纯熟了。 你可能写过几十个中后台列表页,从最早用 v-model 到厥后自界说 hooks,再到封装组件、状态缓存、schema 驱动。

但同样是一个列表页:
低级在堆功能;
中级在理结构;
高级在构建规则。
我们就以这个最常见的中后台场景:搜索 + 分页 + 表格 + 编辑跳转,来看看三个阶段的认知差异到底在哪。
写完 vs 写清楚 vs 写系统

低级
页面能用,接口通,功能不报错
中级
页面结构清楚、组件职责明确、状态复用
高级
页面只是 DSL 映射效果,字段设置驱动生成,具备平台本事
搜索地域的处置惩罚

低级
el-form + v-model + 手写查询逻辑
中级
封装 SearchForm.vue,支持 props 字段设置
高级
使用字段设置 schema,支持字段渲染、联动、权限控制、字典动态加载
低级看起来能用,实则字段散落、表单逻辑零散; 中级可复用,但设置灵活性不敷; 高级直接写 schema 字段声明,字段中心同一维护,整个搜索地域自动生成。
表格地域的组织

低级
表格写死在页面中,columns 手动维护
中级
封装 DataTable 组件,支持 columns + slots
高级
表格由字段设置自动渲染,支持国际化、权限、字典映射、格式化
高级阶段的表格是“字段中心驱动下的视图映射”,而不是手写 UI 组件。
页面跳转行为

低级
router.push + 返回后状态丢失
中级
缓存搜索条件和分页,支持跳转回填
高级
路由状态与组件状态解耦,编辑行为可抽象为弹窗、滑窗,不依赖跳转
体验上,低级只能靠革新;中级保留了状态;高级压根不跳页,抽象为状态变更。
字段结构理解

低级
页面写死 status === 1 ? ‘启用’ : ‘禁用’
中级
使用全局字典表:getDictLabel(‘STATUS’, val)
高级
字段中心同一设置字段寄义、展示方式、权限与控件类型,一份声明全平台复用
高级不写字段映射,而是写字段界说。字段即规则,规则即视图。
工程感理解

你以为工程感是“项目结构清楚”,其实高级工程感是:


[*]样式有标准;
[*]状态有模式;
[*]路由有策略;
[*]权限有方案;
[*]字段有设置中心。
统统都能预期,统统都能对齐。
行为认知:你以为你在“配合”,其实你在“等安排”

你说“接口还没好我就做不了页面”。 你说“等产物图出了我再看组件拆不拆”。
但高级前端早就开始:


[*]Mock 数据、虚拟字段结构;
[*]自界说 useXXX 模块推动业务流转;
[*]乃至反推接口结构,引导后端设计。
配合和推进,只有一线之隔。
低水平重复劳动:你写了许多,但没真正沉淀

你遇到过哪些“看似很忙,实则在原地转圈”的开发场景?
有些开发者,写得飞快,需求接得也多,但工作了一两年,转头一看,写过的每一个页面都像复制粘贴出来的拼图。
你看似很忙,实则只是换了一个页面在干一样的事。
最典范的,就是以下这三类“中后台系统里的低水平重复劳动”:
❶ 每页都重复写 table columns 和格式化逻辑


[*]每页重复界说 columns;
[*]状态字段每次都手写 status === 1 ? ‘启用’ : ‘停用’;
[*]日期字段每页都在 render 中 format;
[*]操作列、index 列、字典值写满重复逻辑。
页: [1]
查看完整版本: 一个列表页面,低级中级高级前端之间区别在哪