團隊開發前端VUE項目代碼規范


團隊開發前端VUE項目代碼規范

一、規范目的:

 

統一編碼風格,命名規范,注釋要求,在團隊協作中輸出可讀性強,易維護,風格一致的代碼

 

二、開發SRC目錄:

 

1.Vuex目錄 (狀態樹配置)

2.Router目錄(路由配置)

3.Pages目錄 (放置主路由組件 注意命名規范)

4.Common目錄 (放置靜態文件)

5.Config目錄 (全局配置項,路由攔截,報錯信息,等枚舉信息)

6.Api目錄 ( 相關全局請求調用配置、axios、jsonp )

7.Base目錄 (可復用功能性組件)

8.Basic目錄 (可復用樣式展示組件)

9.Components目錄(基礎組件:樣式組件等 注意組件分類規范)

10.核心:在每個目錄下面留一份TEXT或MARKDOWN文檔,annotation.txt/annotation.md,用中文批注好每個組件文件夾的功能及使用,每次在當前目錄下新建或更新當前目錄時,需要做好批注 (必須)

 

 

 

三、組件文件夾分類:

 

樣式組件分類(模態框,面板框)

可復用功能組建分類(表格組件,表單組件)

組件內部文件夾

(1)樣式文件stylus 

(2)子組件或者tab組件文件夾childs

(3)靜態資源文件夾 resources

(4)組件下目錄預覽:

 

      |— self-component

         |— resources

         |— childs

         |— stylus

         |— self-component.vue

 

四、靜態資源:

 

1.靜態高質量圖片資源

2.ICON等單個或少個復用性較高的圖片

3.復用性較高的JSON本地文件

4.媒體文件

5.分類

6.命名規則

 

五、組件開發:

 

1.可復用組件開發規范

2.樣式定義組件開發

3.單文件組件開發規范

4.擴充組件功能注意事項

 

六、路由定義:

 

1.全局路由鈎子攔截

2.懶加載中AMD規范require和ES6中的import的選擇

3.攔截條件語句篩選

4.路由名稱的可讀性以及注釋

 

七、接口聯調:

 

1.統一采用axios方式

2.登陸攔截方式

3.參數傳遞:配合query string 實現對象到uri的格式化

4.GET請求規范

5.POST請求規范

6.其他類型請求規范

7.避免拼接uri字符串參數情況的產生

8.聯調失敗,快速定位錯誤的方法

 

八、VUE模板語句使用規范:

 

1.條件 (v-if , v-else, v-if-else, v-show)合理使用 v-if 及 v-show

2.循環 (v-for、 :key)

3.樣式 (:style、:class)

4.事件綁定 (v-on、@)

5.props傳遞 (加類型判斷,不能直接數組接收)

6.其他優化細節(v-text、v-html、v-once)

 

九、VUEX使用規范:

 

 1.單/多狀態樹目錄結構

 2.語法糖和原生this.$store的選擇和使用注意

 3.多模塊VUEX狀態樹配置和使用(目前幾個項目暫時都只涉及到單狀態樹)

 4.state、mutations、actions、getters使用規范 (https://wusihe.com/2018/07/17/vuex/)

 5.axios請求和state混用問題解決

 

 

十、組件開發規范:

 

1.組件模板開發

 

(1)盡可能語義化標簽,使結構更加信息,如不熟悉H5新標簽請查看下面文檔

A. http://www.w3school.com.cn/html/html5_new_elements.asp

(2)大段功能模塊都需要明確中文注釋(要求簡短明確)

(3)在代碼結構很長的情況下,需要分割線注釋批注

(4)模板語法中的邏輯盡可能在filters、computed、methods中處理

(5)Tab縮進,四個空格,層次要求分明

 

2.組件樣式開發

 

(1)基本上處於scoped 私有域開發

(2)CSS預處理器選擇stylus 

A.原因:強大、方便、流行、混合書寫、變量、語言函數等

(3)樣式編寫方式

A.函數式編寫樣式 ,在common目錄下封裝好對應常用的方法,直接傳參

(4)風格:橫向編寫,分號分隔,禁止大括號,背景圖片統一相對路徑調用

(5)如果不熟悉其函數式編程風格的使用,請閱讀下面文檔

A.https://stylus.bootcss.com

B.https://www.zhangxinxu.com/jq/stylus

(6)基本調用結構預覽:

@import './stylus/self-component.stylus'

(6)如有其他想法可以更換成Sass或Less預處理器也可以

 

 

3.組件腳本開發

 

(1)scoped私有域下開發

(2)和模板結構處於同一文件開發

(3)生命周期及其默認結構編寫順序和規則

    A.data  ->  props  -> 生命周期函數 ->  computeds  ->  watch -> methods  -> …

    B.props 統一使用對象模式,且設置好props屬性默認值和類型  

 

 

十一、注釋規范:

 

1.TEMPLATE結構內容注釋

(1)大區塊之間需要回車換行,且有有單獨的中文注釋

2.STYLUS注釋

(1)每個大區塊的樣式的需要有單獨的中文注釋

(2)每個大區塊樣式之間需要回車換行

(3)在STYLUS自定義函數庫文件類似於mixin.styl,則需要對每個語言函數進行單獨的批注,或者一些功能類似的語言函數可以根據功能分類注釋

3.SCRIPT注釋

(1)盡可能多用單行注釋,注釋需要與被注釋的地方對齊

(2)生命周期created()、mounted()下的所有方法調用需要單獨注釋,methods里面涉及接口調用的方法一定要注釋,filters里面的過濾器需要注釋說明功能

命名規范:

 

1.組件文件夾命名:

(1)按照功能英文命名,過長則用 ” - ” 連接

(2)其內部的組件名稱和樣式名稱與文件夾同名

(3)其風格與微信小程序組件文件夾命名保持一致

2.靜態資源文件夾static命名:

(1)英文命名,過長則用 ” - ” 連接

(2)其主目錄需要創建一個解釋文件(annotation.txt/annotation.md),在這個解釋文件中使用中文批注好每個目錄的內容,以及每個目錄正在被哪些組件調用

3.圖片文件命名:

(1)如果是精靈圖,則需按功能命名

(2)如果是列表渲染圖片,則需要按照1-100編號命名

(3)如果是ICON圖片,則需要添加 ”icon-”前綴

 

 

十二、解釋文件:

 

1.定義:一個對當前目錄下所有的文件夾的一個解釋性文檔,中文批注每個文件夾下的組件功能或者資源類型,如果是資源類型文件夾,則還需批注調用該文件夾的組件名稱和路徑

2.名稱:統一命名annotation.txt/annotation.md

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM