程序员摩根
1月前来过
全职 · 300/日  ·  6525/月
工作时间: 周末09:00-06:00工作地点: 远程
服务企业: 0家累计提交: 0工时
联系方式:
********
********
********
聊一聊

使用APP扫码聊一聊

个人介绍

我是程序员客栈的摩根,今年25岁,毕业以后就一直从事前端开发的工作,有3年左右的开发经验,我主要的技术栈是VUE3,react主要用hooks版本多一些,之前一共呆过两家公司,最近的是一家是在厦门,主要是做数据可视化方向多一些。最近做的一个项目是金融方面的数据分析平台,主要是用VUE3 + ts + echarts来实现,这个项目实现起来会更偏纯前端一些,主要是实现各类图表、视频、文字可自由DIY的数据可视化大屏,帮助专业的数据分析人员,轻松的应用在不同的业务场景,主要的核心功能是:可视化拖拽与缩放以及批量编辑功能。这之前也开发过一些其他项目,比如OA系统,小程序都有做过。我是一个自学能力比较强的人,对新兴技术也很感兴趣,业务上手也会比较快。

如果我能帮上您的忙,请点击“立即预约”或“发布需求”!

技能

Node.js
HTML5
CSS
Vue
React
Ajax
ES6
0
1
2
3
4
5
0
1
2
3
4
5
作品
类网易云音乐播放

自己练手项目,仿网易云音乐播放器编写,实现正常歌单,关注,登录,播放,歌词,歌单,播放模式等功能实现,

0
2023-05-24 15:01
可视化页面

某地区,数字乡村综合管理平台,各数据进行可视化页面展示,eCharts各类图标、地图进行数据展示。分7大板块:发展全览、党建引领、生态宜居等板块进行地区人文展示

0
2023-05-24 14:54
可视化编辑平台

可视化平台 该项目主要是为公司数据分析人员用于数据成果可视化展示,例如:季度公司各版块投资回报率展示、公司各部门业绩评估等使用场景。 主要运用的技术栈是,VUE3、ts、pinia、less等来实现的。 总结起来的核心亮点就是: 1.拥有可视化拖拽界面,强大的编辑功能:使用简单拖拽的方式即可完成多种样式和数据配置。 2.拥有丰富的组件库与模板库,同时支持持续的扩展。 3.可以对布局元素进行自定义的样式调节。 SketchRule Vue3DraggableResizable 在页面左侧会有一个图表模块列表:包括Echarts上的各种类型图表以及文字、视频等,通过鼠标可以拖拽到中间画布中生成实际的组件。编辑区域支持等比例缩放;在画布中可以自由调节各组件大小,位置,角度,以及图层层级,在左侧还有一个图层列表,会与画布中组件的层级一一对应,两边都可以进行图层操作。在页面右侧会有一个管理面板,当我们在画布中选中一个组件,管理面板就会出现该组件的一些基本参数,比如位置,大小,角度,颜色、echarts字体设置、配置项设置等,可以进行微调操作。同时画布还支持右击菜单,可实现批量化功能操作:复制、删除、置顶、置底、锁定、聚焦、上移一层、下移一层等;这些功能都是支持批量化操作的,除此以外,画布还支持鼠标框选多个元素,实现批量移动功能、支持键盘快捷键(多选/上下左右微操/复制粘贴/撤回反撤回/保存)、画布下方提供缩略图功能:显示画布中各组件的相对位置且提供可调节比例尺等; 这个项目的功能是非常多的,还有例如:预览功能,历史记录功能、快照功能等; 这个项目我是小组组长,组员加上我一共4个人,共同实现; 我主要负责的就是其中的编辑区域中的所有功能; 项目开发中,遇到的几个难点: 最开始的实现思路,以及大量的坐标计算 比如: 1. 拖拽放置时的坐标计算,以及不同情况判断。 2. 实现鼠标批量框选,要实现任意角度,都可以自由框选。判断元素是否被选中的逻辑; //3. 中间画布和编辑区域,在缩放过程中的大小逻辑; 4. 编辑元素在页面缩放时,要保持等比例缩放,且要保持在画布中的相对位置是不变的。 // 5.缩略图与编辑区域的比例问题,要求画布在缩放时,缩率图中的各个元素保持正确的比例。 这个项目其实做下来,整体感觉还是很有意思的,后端占的比重不大,大多数功能都是依靠前端独立实现,让我有一种真的在敲代码的感觉,因为之前做的一些其他项目,说实话有点像重复机械性的动作,无非就是增删改查那点事,而这个项目运用到了大量的坐标计算以及功能实现的思考,让我有很大的收获。 难点1:1.开始拖拽时,记录鼠标点击位置到模块卡片的坐标。 2. 拖拽放置时,要判断三种情况:1.放置位置在画板外, 在画板上, 在其余元素上。 根据不同的情况,都要计算得到,放置位置相对于整个编辑区域的坐标,然后要减去开始拖拽的坐标,得到正确位置。 难点2的解决思路: 鼠标按下的时候:记录下,按下的位置坐标 鼠标移动事件:1.记录下当前的鼠标位置,计算当前框选div的宽高,取绝对值。给盒子宽高赋值,判断鼠标移动的方向,盒子是向右下画还是其他位置画,根据不同的情况,计算盒子的左上角正确的x,y。 判断元素是否在框选框内,封装一个函数,排除盒子不在框内的几种情况,其余的情况都是属于框选到的,1.元素的y,大于盒子的y+h; 2. 元素的元素的x,大于盒子的x+w; 3 .盒子的y,大于元素的y+h; 4. 盒子的x,大于元素的x+w 难点3:画布缩放和编辑区域不应该都是等比例放大的,编辑区域应该比画布大固定的宽高,保持画布始终居中,因为如果编辑区域也同样按比例放大,那缩率图也得更着等比例放大,才能保证其余比例正确, 难点4:每一个元素对象都记录,当前元素所在位置距离画布的x,y占画布宽高的比例,缩放比例时,通过计算画布最新的宽高,在乘以对应的比例,得到元素在当前比例下的正确位置,然后给元素设置正确的x,y。 难点5: 缩率图的宽高是固定的,编辑区域的实际宽高由画板的宽高决定,所以先通过计算属性得到编辑区域宽高,然后再计算属性得到最新的小地图和编辑区域的比例, 缩略图宽度 / 编辑区域宽度。 在通过计算属性,比例 * 画布宽高,得到缩略图中画布的宽高。

0
2023-05-24 14:39
更新于: 2023-05-24 浏览: 157