部门之前来了个初级前端。一开始项目忙没怎么注意他,但是看他写的代码发现根本不像是前端写的。vue 项目里组件全部写 render ,弹窗都是 Vue.extend 继承后手动挂载,相同的代码必抽 mixin ,甚至多处用到的弹窗还要绑定在 Vue.prototype 上。写功能就是 class ,然后引入一大堆自己写的各种 utils ,什么 typeUtils 、geoUtils ,htmlUtils 。一判断就用自己的代码,导致什么组件都要和他自己写的 utils 耦合,简直是造轮子狂魔。 最离谱的是表格文字超出要显示 tooltip ,他要监听表格大小变化,自己夹带的私货里还要用 webworker 。一问才知道原来是写 java 的。之前也说过他,理由是代码要精简,写 render 可读性差,夹带自己的代码不好维护。但是他说自己写习惯了,所以效果也不是很明显。 想问下大佬们,碰到这种情况一般是怎么处理的。
1
wanganjun 2022-11-17 16:22:26 +08:00
你要是他的领导自然可以管他,你要不是,只能找他的领导
|
2
swulling 2022-11-17 16:22:30 +08:00
Code Review 的时候打回修改。
|
5
marcong95 2022-11-17 17:18:18 +08:00
表格文字超出要显示 tooltip 监听表格大小变化好像 element-ui 也是这样实现的吧,有什么好办法吗?
弹窗绑 Vue.prototype 上也是 element-ui 的做法,所以综合来看应该是读了一波 element-ui 源码深以为然就到处用吧 滥用 render/extends/mixins 确实多少有点奇怪了 |
6
CEBBCAT 2022-11-17 17:22:31 +08:00
整理一下背景。标题提问的是可不可以夹带自己的代码。正文写的是楼主不喜欢他的实现方式。末尾问的是大家是怎么处理的。
楼上追问,楼主补充部门松散,是同僚不是领导,公司没有 Code Review 。 对于这种情况,我建议楼主还是放手别管。代码没有严重交集你就加一层适配器隔离开逻辑,严重交集你再说。 原因楼主应该也明白,领导不管,没有工程文化,费力不讨好。你要是想提升自己技术能力的话,就练自己的刀,早日跳槽吧 |
7
wu67 2022-11-17 17:29:55 +08:00
讲真, render extends 我干活 5 年都没用到过 hhh.
mixins 倒是用的多, 但是也深感 mixin 的弊端, 就是溯源困难, 调试贼痛苦 |
8
Southside OP @marcong95 他的思路是监听表格元素大小的变化,一般前端的思路还是监听 resize 事件或者是鼠标拖动的事件吧,所以才会整出 webworker 。我最不满意的是他一碰到需求,就把自己整理的一大段代码(整个 util class )复制进来,也没有文档,到时候出了 bug 别人就要去看他自己夹带的代码。
|
10
marcong95 2022-11-17 18:01:59 +08:00
@Southside #8 例如一个侧栏展开收起的时候,表格宽度发生变化,监听 resize 无效吧。如果让表格的组件监听展开收起那个按钮的事件,又显得不太优雅。但是我是不太了解这时候怎么能扯出来 webworker 的,webworker 里面不是不访问 DOM 的么,应该可以上 ResizeObserver 之类的吧。
utils 这个没见过 utils 本身,有点难想象,你可以让他把这堆 utils 开源一波~~造轮子不开源还有什么意思 |
11
suzic 2022-11-17 18:11:40 +08:00 via Android
有使用文档的话都可以接受
|
12
learningman 2022-11-17 18:17:19 +08:00 via Android
问问他的 utils 能不能合并一下发 npm 或者公司私有库,稳定性可维护性也有保证
|
13
silencil 2022-11-17 18:49:14 +08:00 via iPhone
其实看关系,我和同事也是同级,共同维护几个模块,为了保证代码风格,一开始我直接帮他写,然后关系处的很熟了,后面给他讲解怎么写,他也不会反感。
|
15
potatowish 2022-11-17 19:48:16 +08:00 via iPhone
然后引入一大堆自己写的各种 utils……
已经是 java 的形状了 |
16
IvanLi127 2022-11-17 23:44:14 +08:00 via Android
项目谁负责?他负责你听他的,你负责他听你的,不是你们负责的话,你写你的他写他的。不过考虑公司利益和你们的体验,向领导确认汇报下呗?
人家轮子未必不是好事,就是。。。看这名字不像什么优秀的轮子。 |
17
NerbraskaGuy 2022-11-18 11:25:45 +08:00
草,你的描述让我想起我之前接手一个前端项目的噩梦了,简直一模一样,当时也怀疑是个后端客串写的,接手后改起来发现一个套一个跟套娃一样
|