`審核人:白占寧`
`被審核代碼負責人:孫雨珩`
`代碼地址:http://192.168.1.170/hyfe/demo-project/tree/master/demo-sunyuheng`
### 值得分享的地方
* 各個組件文件中代碼的組織形式;
* `moment.js`的使用;
* `conic-gradient`使用場景及能實現的效果分享。
### 存在的問題
#### 1、項目目錄結構
目錄結構與`gitlab`上的不一致,所有項目的目錄結構應該保持一致。
#### 2、變量命名
```
var $el = me.$el = $(tpl)
var $count = me.$count = $el.find('.J-count')
var $title = me.$title = $el.find('.J-title')
```
解決方案:聲明變量時不建議以`$`開頭。
#### 3、項目中`_`默認為表示`lodash.js`
```
var _ = require('common/util')
```
解決方案:替換變量名稱,不要使用`_`命名。
#### 4、選擇元素時原生JS與jQuery混用
```
var containerEl = document.querySelector(container);
if (containerEl) {
containerEl.appendChild(
me.$el.node()
)
}
```
解決方案:項目中引入了jQuery,涉及到DOM相關操作就都使用jQuery來完成。
#### 5、提供的API方法的參數
提供的繪圖API的方法參數固定為三個:容器,數據和配置項,其中容器和數據必選,配置項可選。
```
/**
* 繪制圓形類型圖,對外提供的API接口
*
* @param {string} container 容器
* @param {array} data 數據源
* @param {object} options 配置項
*/
function drawRadarCircle(container, data, options) {
var cfg = _.merge({}, defaultSetting, options)
// ......
```
#### 6、對外提供的API中不需要創建SVG元素
```
var $el = me.$el = d3.select(
document.createElementNS('http://www.w3.org/2000/svg', 'svg')
)
.classed('donut-map-chart', true)
```
解決方案:不建議在對外提供的API中創建SVG元素。
#### 7、定義的變量從未使用
```
var timer = new Timer({
el: '#J-timer-container',
})
```
解決方案:定義了`timer`變量,在后面的代碼中一直沒有使用,就不要定義該變量。
#### 8、關于假值的判斷
```
floorNum: function(num, n) {
if (n == null) {
n = 2
}
var scale = Util.calcNumScale(n)
return Math.floor(num * scale) / scale
}
```
解決方案:n有默認值,因此是可選的,所以這里判斷時候建議使用`!n`代替`n == null` ,或者使用如下方式:
```
if(n == null) {
n = 2
}
// 替換為下面這種方式
n = n || 2
```
- 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-謝洋