前端月中总结

1、领导一拍脑门想要一个内部聊天软件 --基于open IM二次开发

背景

前段时间不是接手了一个内部办公软件的项目嘛,这个项目已经写了三四年了,一代代的前端融合了不知到多少种代码风格,再加上最初搭这个项目架子的人不知道咋想的,任何规范都没有,整个项目已经摇摇欲坠。但是大领导就是想要在里面加一个聊天功能,但之前一直没有人处理,一直拖着,直到我和另一个后端加入这个项目组。

opemIM

OpenIM:由IM技术专家打造的基于 Go 实现的即时通讯(IM)项目,从服务端到客户端SDK开源即时通讯(IM)整体解决方案,可以轻松替代第三方IM云服务,打造具备聊天、社交功能的app。

OpenIM 在GitHub拥有13.7k starts,并且具备完善中英文文档。

二次开发中的一些问题

Demo代码阅读

我的二次开发是基于官方提供的 uni-app Demo 进行的。在开发过程中我发现许多功能已经被封装在组件中,但在 Demo 中并没有使用。如果你也打算集成二次开发,我强烈建议:

  1. 仔细阅读公共组件:深入理解每个组件的功能和用法。
  2. 熟悉公用方法库:详细了解已有的方法,避免重复开发。
  3. 充分利用现有资源:在开发过程中优先考虑使用已封装的组件和方法,提高开发效率。
  4. 避免重复造轮子:在添加新功能前,先检查是否已有相似的实现。

通过这些方法,暂时避免这个项目变成屎山代码。

音视频功能

OpenIM的音视频功能是被官方在核心代码中移除了的,当然你可以通过他们官方客服去了解这一部分业务。不过,这单位是分币不想花,没办法只能去找另一个开源项目livekit,这个项目没有中文文档,前端demo用的React写的,不过他将一些常用的东西封装好了。其他的,我也还在集成当中,啥时候弄完了再说说吧...

2、我的第一个插件 --水印相机-qt-waterMark

水印相机-qt-waterMark 是一个基于uni-app live-pusher的纯前端水印相机插件,目前相机主界面支持美颜,美白开关,水印开关,自定义水印内容等操作。这是我个人的第一个插件,在八月末的时候上架了插件市场,大家可以下载看看,觉得还行的话帮我点点评分。也可以给我提供一些改进的思路。

3、最近的一些思考与学习

新项目搭架子却争吵了两天

公司前面用的Vue2项目架子已经很老了,再加上一些原因被改得面目全非,已经到了不得不放弃的地步。但是在新项目架子的选型上出现了很多争吵。首先就是JavaScript与TypeScript之争,这里为什么讨论很久,相信大家都明白其中缘由(我本人踏上前端的第一个正式项目是Vue3+TypeScript,因此我更倾向这一种,但是公司其他人没写过正式的TypeScript的项目)。另一个争论就是我不理解的地方了,他们要求pc端要两套代码(原话大抵是一套前端的管理后台,另一套是后端用的管理后台)。这是我极为不理解的地方,也应是我从业较短,没见过要这样去区分开。

重学node.js

最近比较迷茫,思来想去还是决定走伪全栈这条路。自己node.js的水平勉强也能写简单的CRUD但是根本不足以用在企业上面,因此打算好好学一下node.js以及对应框架koa.js或者nest.js,顺便试试所谓微服务还有redis等等这些东西。我解决解决焦虑办法,就是埋头去学习

相关推荐
转转技术团队1 分钟前
代码变更暗藏危机?代码影响范围分析为你保驾护航
前端·javascript·node.js
Spark2386 分钟前
关于vue3整合tiptap的slash菜单的ts支持
vue.js
Mintopia10 分钟前
Node.js高级实战:自定义流与Pipeline的高效数据处理 ——从字母生成器到文件管道的深度解析
前端·javascript·node.js
Mintopia12 分钟前
Three.js深度解析:InstancedBufferGeometry实现动态星空特效 ——高效渲染十万粒子的底层奥秘
前端·javascript·three.js
北凉温华12 分钟前
强大的 Vue 标签输入组件:基于 Element Plus 的 ElTagInput 详解
前端
随笔记12 分钟前
Flex布局下,label标签设置宽度依旧对不齐,完美解决(flex-shrink属性)
javascript·css·vue.js
加兵柠檬水15 分钟前
代码输出题,会这些就够了。
前端
Json201131516 分钟前
Gin、Echo 和 Beego三个 Go 语言 Web 框架的核心区别及各自的优缺点分析,结合其设计目标、功能特性与适用场景
前端·golang·gin·beego
樊小肆16 分钟前
实战!从 0 到 1 搭建 H5 AI 对话页面
前端·vue.js
sayen17 分钟前
记录 flutter 文本内容展示过长优化
前端·flutter