大家好,我是林三心,用最通俗易懂的话讲最难的知识点是我的座右铭,基础是进阶的前提是我的初心~
很多人都来问我:我平时写的东西都是后台管理系统,根本就没啥亮点的东西,我也没啥进步,我该咋办呢?
后台管理不丢人
其实据我了解,大部分前端在公司其实就是做后台管理系统,偶尔做做移动端,那么大家都是做后台管理,你要怎么比别人强呢?其实就是一个点:你如何把后台管理系统做得更好
其实我也做过一段时间的后台管理系统,我总结了几点我的心得,分享给大家~
多封装组件
封装是一个很普遍的操作,但是却很少人去做好这件事,我现在做后台管理系统的话我会做到极致的封装,只要是一个东西有两处地方复用到了,我肯定会抽取封装起来,在这个过程中,我也学到了很多 Vue3 的 API,也发现很多封装组件的技巧,比如
- shallowRef 节省性能
- computed 的 getter 和 setter
- 组件 props 类型的拓展
- 组件封装的更加方便使用
- 模板的极致复用
- 命令式使用弹窗
多封装 Hooks
对于一些业务性的逻辑代码,或者共用的逻辑代码,都要有抽取成 Hooks 的意识,这有利于于后续代码的可维护性,并且抽取共用的 Hooks,有利于代码可复用性,提高代码开发效率,锻炼你的逻辑封装能力,我最近封装了很多 Hooks,比如
- useClickoutside:点击目标区域以外触发事件
- useCommandComponent:命令式使用组件
- createModal:命令式使用弹窗
- useTemplate:本组件复用弹窗
- useGlobalState:局部状态管理
- useVirtualList:虚拟滚动
- 等等。。。
多考虑边界条件
我发现很多人在做后台管理也好,做其他的东西也好,其实总是会考虑得没那么周全,其中一点就是,总是不考虑边界条件,不去考虑兜底,比如:
- 组件的参数兜底检验补全
- hooks的参数兜底补全
- 接口请求数据出错、接口报错的兜底
- 某些代码记得加 try catch 进行兜底
- 代码执行先后顺序问题,怎么去控制按照顺序去执行
多想想产品优化
其实优化不止是代码优化,也有产品优化,有时候其实产品经理想出来的点子,也是不合理的,这个时候你可以去提出自己的见解,让整个产品更好,当然代码的优化也是必须做的,比如:
- 防抖节流
- 长列表的虚拟滚动
- 大文件的分片上传
- 多请求时的控制并发
- 使用合适的 API ,节省性能
- 多使用设计模式,提高代码健壮性
多想想怎么提高效率
你要知道,后台管理系统其实业务难度是有限的,但是其实你可以不要局限于项目,而是要经常去想想:
- 你能怎么在项目中去让自己进步
- 你要怎么样去提升自己的开发效率
- 你要怎么样去提升整个团队的开发效率
就比如我,我在开发后台管理系统的时候,我会做这些事:
- 发现某些别人不合理的开发习惯,可以记下来,反馈给团队
- 为了团队开发规范,开发一些小工具,来助力团队的规范
- 为了团队成员开发的效率,开发一些小工具,帮他们提升开发效率
- 多为团队的组件库工具库贡献,这样也能提升整个团队的开发效率
- 主动去封装一些比较难的组件,提升团队开发效率,使自己进步
多搞配置化
我记得我一年前去面试一个高级前端工程师的岗位时,面试官就问我一个问题:假如你开发一个后台管理系统,你怎么让你的团队成员更轻松去开发呢? 我当时回答说:制定规范! 然后面试官我没体会到他真正的意思
现在我算是领会到了,面试官的意思是:你要怎么开发一个后台管理系统,让你的组员无脑地开发
那其实我觉得,把一些事情做成配置化,这样才能让别人开发的时候,更加方便、更加无脑~
其实后台管理无非就几个东西:
- 表单
- 表格
- 图表
那么可以做相对应的配置器,让其他人只需要传入配置,就可以生成想要的页面效果,比如:
- 表单配置器
- 表格配置器
- 图表配置器
多看看别人怎么做的
github 上有很多很出名的后台管理系统,大家可以去看看人家是怎么写的,为啥你写的像入门级,人家写的像大佬级别,可以多看看多学学,我推荐给你们vben-admin,我从这个后台管理项目中真的学到好多东西!