1、可以使用Webpack、Glup、Grunt打包过文件,清楚Vite和vue-cli之间的区别,可以使用Vite做过项目的开发
2、了解Vue和React,使用过衍生的组件库开发项目,了解Vdom和Diff算法,看过部分Vue的源码
3、使用NodeJS开发接口,使用Sequelize完成项目的CRUD,了解MongoDB和MySql的区别,可以在项目中使用Redis
4、了解Promise、async/await的基本原理,在项目中能够熟练使用开发
5、了解并且使用过Typescript、Sass、Es6、Eslint等基本的使用
6、了解浏览器原理和网络协议,如垃圾回收机制,事件循环机制,HTTP 协议等
项目介绍:基于cos在线对象存储,附加权限控制系统及其他功能,是一个基于electron的 桌⾯端 客户端(改造并复⽤web端)的toB项目
项目技术栈:Vue2.7+Vue-composition-api和其余Vue全家桶
负责模块:
1、误删回复、可疑文件,这两个模块使用的页面设计基本一致,但是因为接口的不同,所以将两个模块抽成了一个组件,将逻辑写到了compositionApi中,通过不同的路由来渲染对应的数据,功能包括虚拟列表、恢复、多空间查询、删除等
2、新手引导,主要使用drive.js生成不同的模板引导用户的点击,并且需要区分身份,不同的身份展现的新手引导不一样,将这层逻辑抽成了一个单独的js文件,还会将用户的数据上报给后台,使用一个json格式的数据记录,以防止用户重复的新手引导
3、部分单向同步盘,主要是利用fs.watch去监听本地文件,然后将其异步的写入网盘中
4、部分上传的功能,实现了简单上传和切片上传,还完成了部分的任务列的设计,完成的功能包括上传的任务的展示、任务的暂停、开始、进度条展示和等
5、实现全局的共享抽屉组件,按照TypeScript类型约束参数,从而实现全局控制抽屉的显示、隐藏、销毁和切换文件时的数据更新,抽屉内部还有文件详情、动态列表、成员管理等,这些全局的抽屉组件应用于所有需要展示文件的地方
6、分享外链,该模块涉及到将文件分享给外部人员的操作,需要做单独的分享页面、下载和保存的逻辑,区别于原有个人空间/企业空间