总结一下我的dmp第一个版本 也是最后一个版本
本来是一个前辈在负责,四月底离职了,他离职前我花了一周把这个项目交接了过来,大致熟悉了项目的业务流程以及代码结构,第二周就开始评审排期开始开发了,其实略略有点方~
目前我做的是1.4版本,本次功能主要是新增数据接入模块,让客户自己新建数据源并查看,新增了三种类型的人群创建,创建时需要选择接入后的数据源。
因为dmp和之前一直在做的crm技术栈基本一直,都是用的nodejs+jquery,所以项目上手还比较简单。
有几个技术点:
1、新建人群页面手动实现了一个穿梭框(和视觉对页面时她说是参照了element ui的穿梭框 我说咋有点眼熟
哈哈哈)
(后面写一篇详细说一下我的穿梭框)

2、第二个是因为查看数据源时需要画折线图类型的图表 这部分我留在最后做的 先把echarts和highcharts的官网文档看了一遍 跟着敲了一些简单的小demo 用起来差不多 就选用了看得稍微熟一点的highcharts
思路就是 先在页面给定一个具有宽高的div,然后在js文件中初始化该图表,每次点击时间控件或者数据维度的时候重新请求后台接口,重新处理图表数据,更新图表数据列,重绘图表。
<div class="has-content has-charts hidden">
<div id="charts" style="height:400px;"></div>
</div>
// 每次切换时间维度 重新取数据 更新x轴数据和刻度 redraw图表
redrawChart: function(chart) {
// 更新data
chart.series[0].setData(chartsData[0], false);
chart.series[1].setData(chartsData[1], false);
chart.series[2].setData(chartsData[2], false);
// 更新x轴分类
chart.xAxis[0].setCategories(chartsData[3], false);
chart.redraw(); // 更新完所有数据后 重绘图表
},
注意:
highcharts的函数中第二个参数一般是指是否重绘图表,默认是true,即一有更新便重绘
这里因为有多个数据需要更新,所以设置为false,更新完所有数据后再重绘图表。
3、实现了一个固定表头的table
实现方式是对两个table进行拼接:
两个table的父级div宽度必须相等,
设置第一个table所在的父级div的padding-right为17px,这是滚动条宽度
设置第二个table所在的父级div的最大高度,overflow-y:scroll,
然后设置两个table的宽为100%,此时两个table的宽相等,再按照百分比设置th和td的宽,此时就实现了表头固定
4、写了一个LESS文件
less学起来用起来都挺简单的,之前只是自己学过,但是没有在实际项目中敲过less代码,这次dmp因为新增了模块,用到很多样式,所以我另外写了个less文件,
dmp使用gulp作为构建工具,所以每次修改完less文件都需要gulp执行一下编译less为css的命令,这样页面引入的css文件中样式就是最新的了。
总的来说,
这个版本做下来学到的挺多的,接触了一些新知识,然后去学习新知识,这个过程还是很快乐的
所以还是应该多接触新项目学习新知识才能有进步
继续加油吧~~~
总结一下我的dmp第一个版本 也是最后一个版本的更多相关文章
- git获取一个版本相对于另一个版本新增,修改,删除的文件
git diff --name-status 00ef237ef0f0a4b8bd9609c2b6d570472028212d abf13b4d58abbb05a7d494cdc205d025978a ...
- PHP有两个不同的版本:4.x系列版本和5.x系列版本
在为用户提供动态内容方面,PHP和MySQL是一个强大的组合.这些年来,这两项产品已经跨越了它们最初的应用舞台,现在,一些世界上最繁忙的网站也在应用它们.虽然它们当初都是开源软件,只能在UNIX/Li ...
- github for windows回滚到某一个版本,
建议先学会使用git命令再学GUI版的git,git本来就是命令行程序,GUI本质就是执行一些命令.仅从一些icon和单词去理解一些操作难免会有偏差.而反过来,熟悉命令会更好地理解GUI操作.想要回滚 ...
- SqlServer高版本数据本分还原到低版本方法
最近遇见一个问题: 想要将Sqlserver高版本备份的数据还原到低版本SqlServer上去,但是这在SqlServer中是没法直接还原数据库的,所以经过一系列的请教总结出来一下可用方法. 首先.你 ...
- xp硬盘安装Fedora14 过程记录及心得体会(fedora14 live版本680M 和fedora14 DVD版本3.2G的选择)
这次电脑奔溃了,奇怪的是直接ghost覆盖c盘竟然不中.之前电脑上硬盘安装的fedora14操作系统,也是双系统.不知道是不是这个问题,记得同学说过,在硬盘装fedora之后,要手动修改c盘隐藏的那个 ...
- SQL Server中TempDB管理(版本存储区的一个example)
原文:SQL Server中TempDB管理(版本存储区的一个example) 原文来自: http://blogs.msdn.com/b/sqlserverstorageengine/archive ...
- PHP集成环境自定义设置PHP版本,同时运行多个php版本,700个PHP版本随时切换,一键开启常用模块。
本文采用我自己开发的纯绿色版WAMP环境(我将这个WAMP环境命名为PHPWAMP) (PHPWAMP默认集成VC,不需要单独安装) 那么什么是WAMP环境?WAMP这个词是什么意思? Windows ...
- 【转载】 A* 寻路算法 (个人认为最详细,最通俗易懂的一个版本)
原文地址: http://www.cppblog.com/christanxw/archive/2006/04/07/5126.html =============================== ...
- gitlab 从古老的 bitnami 版本 迁移到官方最新版本
这是我之前发布在 yuque 的文章.是我刚来新公司的时候帮公司搬迁 git 记录下来的,现在看来去掉敏感部分直接发布也没啥问题啦,就搬家过来,我自己也方便查 XD . 8.1.6 -> 10. ...
随机推荐
- SerialPort项目配置
app的build.gradle下: apply plugin: 'com.android.application' android { compileSdkVersion 26 defaultCon ...
- C# 文字滚动特效(上下滚动)
本程序改编至网上下载的一个自定义控件,原控件是左右滚动效果,类似于跑马灯效果,由于项目需要,改编为上下滚动. 前期没有实现自动折行,今天刚加上自动折行. using System; using Sys ...
- 关于getClass()的一些自己的见解
通过观看视频讲解,我得知,Class 老师讲解的是 这个是类的类,即是管理类的类.当时不是很理解,随后查询了相关资料后,以及真切的运行了几行代码后,才有一些深层次的体会, 在这里想要跟大家分享一下.如 ...
- C5.cpp
(1)不要使用delete来释放不是new分配的内存(2)不要使用delete来释放同一个内存块两次(3)若用new[]分配内存 ,则应该用delete[]来释放(4)若用new分配内存 ,则应该用d ...
- 2018-2019-2 20175328 《Java程序设计》第八周学习总结
2018-2019-2 20175328 <Java程序设计>第八周学习总结 主要内容 泛型 泛型推出的主要目的是可以建立具有类型安全的集合框架,如链表.散列映射等数据结构. 1.泛型类声 ...
- 搭建zookeeper+kafka集群
搭建zookeeper+kafka集群 一.环境及准备 集群环境: 软件版本: 部署前操作: 关闭防火墙,关闭selinux(生产环境按需关闭或打开) 同步服务器时间,选择公网ntpd服务器或 ...
- CentOS 7 升级 Linux 内核
一.升级内核 1.更新仓库 yum -y update 2.用 ELRepo 仓库 rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org ...
- 三、CSS样式——链接
CSS链接的四种状态: a:link ——普通的.未被访问的链接 a:visited ——用户已访问的链接 a:hover ——鼠标指针位于链接的上方 a:active ——链接背点击的时刻 常见的链 ...
- Error occurred during initialization of VM Could not reserve enough space for object heap
Error occurred during initialization of VM Could not reserve enough space for object heap Java虚拟机(JV ...
- Python:笔记2
[文件操作] 1.fileopen = open(file).readlines() //type是list 2.filewrite = open(file,'w') filewrite ...