工作日志 2023/3/31
Joyer Lee Lv3

今天的工作很零碎,也没有技术上太值得讨论的问题,今天的任务主要是检查在即将发布的项目迭代中我负责的功能模块的代码,把遗留的一点小问题处理掉并合并代码。

上午处理了的问题是:

(1)业务项目中,依赖的公共组件包存在类型问题

(2)昨天配合运维同事实现的自动构建失败问题

对于问题(1)

原因是负责开发公共组件的同事没有为对外抛出的方法提供正确的参数类型,导致我的项目编译报错,至于之前为什么没错误,那是因为没有在vue 项目中启用ts(同事写法,提醒后才加--||),回到参数类型报错的问题,我确定在早几天已经与公共组件开发同事约定过函数的传参及返回值,无类型检查时运行完全没有问题,经协作同事检查后回复逻辑代码中确实使用了之前约定的参数,由于同事没时间处理我的问题,先在我的业务代码中显示修改为any类型(项目紧急,问题多多,显得代码规范都不算什么问题了 --||),我设想了内部用的ts编写的代码的话,不应该逻辑与类型不一致的情况,如果出现这样的问题,那应该是js实现的代码,然后手写了一份与js匹配的声明文件,拉了同事分支阅读源码后,确实如此,考虑到职责及还有其他工作要做的问题,最终并未帮同事解决这个小问题,而是暂时用any保证项目的正常运行。

思考了下由于公共组件库项目,由于历史原因,部分源码基于js实现,为了兼容ts,为这些js添加了类型声明文件,一旦改变代码逻辑,就要手动维护声明文件,还是有些维护成本的。至于为什么不能替换为ts文件,我猜测也是因为同事们对typescript的了解不够深入吧,或者对开发过程中的问题有不一样的容忍度吧。篇幅所限,有机会再好好去体会typescript的强大之处吧。

对于问题(2)

这个问题的原因实在是因为主观上对自己的行为有点自信,理由很简单,我认为我发布了包,但实际上未发布,所以获取的包是有问题的。但在一开始遇到这个问题时,我首先排除了发布包的问题,分别排除了vite缓存的问题,以及安装包时使用的npm镜像地址问题,才意识的是自己的盲目自信。

下午处理了一些样式问题后,发起了提交请求,但注意到之前在vscode源码的渲染进程中请求了dev环境的接口,当时发现vscode配置了CSP(内容安全协议),不允许请求http协议接口,当时简单的开放了此安全配置,此操作降低了安全等级,不是合适的处理方案,了解csp相关知识后,经人提醒,可以在csp配置参数中指定我们的域名,例如connect-src: http://example.com.cn,这样对安全等级上影响不大,目前我认为此方案更合适。

一周过得好快啊,已经周五了,打算过个轻松充实的周末,也不能忘记要努力提升自己的技术力!

  • 本文标题:工作日志 2023/3/31
  • 本文作者:Joyer Lee
  • 创建时间:2023-08-13 18:58:32
  • 本文链接:https://lhx.blog.wj2015.com/2023/08/13/工作日志/工作日志2023_3_31/
  • 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!