`审查人:白占宁`
`被审核代码负责人:舒曼`
`代码地址:https://192.168.1.240:8443/svn/repos/source-analysis`
### 比较好的地方
* 注释很完善,并且很规范。
### 存在的问题
#### 1、Handlebars中的helpers定义到调用的方法外面
```
Handlebars.registerHelper('addKey', function(index){
return index + 1
})
```
解决方案:将以上定义定义到初始化方法中或单独放到一个helper.js文件中,避免重复定义。
#### 2、避免拼接字符串
```
paging: function(totalPage, currentPage){
var pagingHtml = ''
for(var i = 0; i < totalPage; i++){
pagingHtml += '<span><b></b></span>'
}
$('.ball-page p').html(pagingHtml)
$('.ball-page span').eq(currentPage-1).addClass('active')
}
```
解决方案:使用模板代替,不要拼接字符串,该问题的修改可延后。
#### 3、避免无意思的方法声明
```
'cx': function(d, i){
return 0
},
'cy': function(d, i){
return svgHs / 2 - 30
},
```
解决方案:固定值时不用写function,如下:
```
'cx': 0,
'cy': svgHs / 2 - 30
```
#### 4、每个变量都单独使用`var`声明
```
var width = 0,
height = 0,
cfg = {},
svg = '';
```
#### 5、方法定义位置不对
```
function start(){
svg.selectAll('*').remove()
pageBox.forEach(function(data, i){
var svgWs = 0;
var svgHs = 0;
if(i == (g-1)){
svgWs = svgW1;
svgHs = svgW1;
}else{
svgWs = svgW;
svgHs = svgH;
}
var cirbox = svg.append('g')
.attr({
'transform': function(){
if(i == (g-1)){
// ......
```
解决方案:`start()`方法不要定义到`init()`方法内部,另外`forEach`循环体中操作的内容过多。
#### 6、data方法绑定数据问题
```
var updataMiddleCir = updataCirSvg.selectAll('.middleCir')
.data(function(d){
return [data]
})
```
解决方案:使用如下的方式:
```
var updataMiddleCir = updataCirSvg.selectAll('.middleCir')
.data([data])
```
- 1、执法项目
- 1.1 20170523-张红桥
- 1.2 20170523-李伟
- 2、运维项目
- 2.1 20170527-欧阳德才
- 2.2 20170613-尹帮会&欧阳德才
- 2.3 20170706-欧阳德才
- 2.4 20170706-尹帮会
- 3、指挥大屏项目
- 3.1 20170712-欧阳德才
- 4、PC端项目
- 4.1 20170516-张红桥
- 5、万达项目
- 5.1 20170619-李伟&舒曼
- 5.2 20170623-李伟&舒曼
- 5.3 20170803-李伟(未修改)
- 5.4 20170811-李伟(未修改)
- 6、可视化组件
- 6.1 20170718-张红桥
- 7、UI组件
- 7.1 20170522-舒曼
- 8、新员工练习项目
- 8.1 20170401-欧阳德才
- 8.2 20170401-舒曼
- 8.3 20170503-舒曼
- 8.4 20170609-刘黎
- 8.5 20170620-刘黎
- 8.6 20170703-谢洋
- 8.7 20170706-孙雨珩
- 8.8 20170706-谢洋
- 8.9 20170711-谢洋
- 8.10 20170724-谢洋
- 8.11 20170908-谭俊
- 8.12 20171026-廖爽
- 8.13 20171027-廖爽
- 8.14 20171027-廖爽
- 8.15 20171031-廖爽
- 8.16 20171103-覃英琪
- 8.17 20171103-01-廖爽
- 8.18 20171103-02-廖爽
- 8.19 20171110-赵家红
- 8.20 20171110-覃英琪
- 8.21 20171110-02-赵家红
- 8.22 20171115-01-廖爽
- 8.23 20171127-赵家红
- 8.24 20171122-李祁
- 8.25 20180528-吴泓江
- 9、资源监控大屏
- 9.1 20170705-舒曼
- 9.2 20170711-舒曼
- 9.3 20170724-舒曼
- 10、CQ指挥舱
- 10.1 20170906-张红桥&李伟&谢洋
- 11、昆明
- 11.1 20171009-李伟&舒曼
- 12、情报墙
- 12.1 20171025-谢洋
- 13、动态管控
- 14、迪爱斯区县
- 14.1 20171128-欧阳德才
- 15、贵州块数据指挥调度平台
- 16、北京东城区可视化项目
- 16.1 20180425-欧阳德才&谢洋
- 16.2 20180510-谢洋