JS
1.if else 嵌套深 使用三元運(yùn)算符 或 switch case
2.* 禁止使用var 使用let const
3.使用箭頭函數(shù)
4.盡量使用 Array、Object 擴(kuò)展函數(shù)
5.放棄使用jquery 改用vue ref操作dom
6.參數(shù)獲取,對象拷貝,數(shù)組擴(kuò)展等使用解構(gòu)方式。
7.Component 中靜態(tài)數(shù)據(jù)單獨(dú)存放或者定義在store中
8.變量、函數(shù)使用小駝峰 eg: userName. 類名、接口使用大駝峰 eg:UserClass
9.* 禁止使用中文作條件判斷
10.* 禁止行內(nèi)樣式 出現(xiàn)style屬性
11.v-for 后面一定要加key
12.盡量使用v-if 對于頻繁的顯示影藏使用v-show
13.對于class復(fù)制條件放入計算屬性中
14.js中對象的屬性名定義盡量不使用引號 除特殊情況
15.減少操作window對象, 若必須組建銷毀前一定要清理掉window添加的對象
window.addEventListener("message", function(event) {});
16.提取公共組件
17.對于函數(shù)或?qū)ο笤偷臄U(kuò)展使用類的方式
18.減少代碼冗余
19.全部采用axios 方式請求數(shù)據(jù) (不要使用ajax)
20.接口操作、狀態(tài)操作全部分離
21.采用scss
22.頁面分模塊開發(fā)
建議
1.作為條件判斷顯示或者有無 使用is 、has 開頭
2.scss嵌套深度不超過三級
新增
- 文件命名規(guī)則
- 名詞組成 盡可能用一個單詞標(biāo)識
- 自定組件的文件夾或者文件名為大駝峰命名
- 其他文件夾及文件名為小駝峰
2.vue 方法放置順序
export default {
name: 'componentName',
components: [],
props: {},
data() {
return [];
},
computed: {},
// 鉤子函數(shù)
created() {},
metods: {},
filter: {},
watch: {}
};
3.method 自定義方法命名
- 動賓短語(good:jumpPage、openCarInfoDialog)(bad:go、nextPage、show、open、login)
- ajax 方法以 get、post 開頭,以 data 結(jié)尾(good:getListData、postFormData)(bad:takeData、confirmData、getList、postForm)
- 事件方法以 on 開頭(onTypeChange、onUsernameInput)
- init、refresh 單詞除外
- 盡量使用常用單詞開頭(set、get、open、close、jump)
- 駝峰命名(good: getListData)
4.常量命名必須大寫以下劃線連接,所有常量存放公共目錄并按模塊分類必須寫注釋
5.高度,長度,時間,經(jīng)緯度。。。單位統(tǒng)一
6.emit方法名使用常量命名
this.$emit('[MODULE]UPDATE_CURRENT_TIME')
7.* 函數(shù)超過30行的必須拆分 特殊情況除外
8.文件后綴一律省略(.js.vue.css.scss)
9.view 視圖邏輯 store api cesium 代碼必須分離
10.變量命名使用名詞禁止使用動詞
11.cesium中的primitive數(shù)據(jù)源、圖片必須采用外部數(shù)據(jù)??稍O(shè)置默認(rèn)圖片。
12.git commit注釋格式統(tǒng)一
13.模塊、變量、函數(shù)命名語義不要太狹隘,要寬泛。
- 禪道中每天更新自己的任務(wù)
- 禁止使用git工具提交代碼
- 每日例會必須開
- 模塊發(fā)布測試 、項(xiàng)目發(fā)布、模塊迭代、域名或API地址變動等重要事項(xiàng)必須發(fā)送郵件抄送前端所含有人員、產(chǎn)品經(jīng)理、UI設(shè)計師、測試人員以及項(xiàng)目相關(guān)其他人員。
考核表中:
每月檢查一個模塊
一個問題不發(fā)生5%
提前把完成在追加5%
10個以內(nèi) 基礎(chǔ)工資
沛文多加五個(三個月)
10-20 扣除5%
20-30 扣除10%
駱峰式命名法(Camel-Case)
