前端開發(fā)規(guī)范(jk)

前端開發(fā)規(guī)范

一歉糜、通用規(guī)范

  • 1吧寺、TAB鍵用兩個(gè)空格代替
  • 2、CSS樣式屬性或者JAVASCRIPT代碼后統(tǒng)一不加“所禀;”蛹屿。
  • 3屁奏、文件內(nèi)容編碼均統(tǒng)一為UTF-8。

二错负、JavaScript書寫規(guī)范

  • 1坟瓢、命名規(guī)范

文件名、文件夾名

全部小寫犹撒,多單詞的使用中橫線分隔
如:aaa-bbb折联、ccc-ddd

標(biāo)簽名

全部小寫,多單詞的使用中橫線分隔
如:aaa-bbb识颊、ccc-ddd

常量名

全部大寫并單詞間用下劃線分隔
如:CSS_BTN_CLOSE诚镰、TXT_LOADING

對(duì)象的屬性或方法名

小駝峰式(little camel-case)
如:init、bindEvent祥款、updatePosition

類名(構(gòu)造器)

駝峰式
如:Current清笨、DefaultConfig

函數(shù)名

小駝峰式
如:current()、defaultConfig()

變量名

小駝峰式
如:current刃跛、defaultConfig

私有變量名抠艾、私有函數(shù)

小駝峰式但需要用_開頭
如:_current、_defaultConfig桨昙、_private()

  • 2检号、使用嚴(yán)格的條件判斷符腌歉。用===代替==,用!==代替!=谨敛,避免掉入==造成的陷阱究履,在條件判斷時(shí),這樣的一些值表示false脸狸。

  • 3最仑、其他的遵循esLint的規(guī)則就行了

三、實(shí)際項(xiàng)目開發(fā)簡介

  • 1炊甲、目錄結(jié)構(gòu)
目錄結(jié)構(gòu)
  • 1) api --- 接口模塊目錄
  • 2) base --- 基礎(chǔ)組件目錄
  • 3) common --- 公共模塊目錄泥彤,主要存放公用圖片,公共方法卿啡、類吟吝、工具包,以及公共樣式颈娜、全局樣式
  • 4) page --- 頁面模塊目錄剑逃,主要以頁面為單位放置
  • 5) router --- 路由模塊目錄(小程序暫時(shí)沒有)
  • 2、文件結(jié)構(gòu)
    • 1)api文件夾
api文件夾
  • a官辽、 接口請(qǐng)求統(tǒng)一使用axios(小程序則直接引入已封裝的http工具類)
  • b蛹磺、 文件按后端接口模塊創(chuàng)建 es: 接口url為 '.../api/info/get-user',所以api目錄下就需要?jiǎng)?chuàng)建一個(gè)info.js的文件for后端的info模塊
  • c同仆、 當(dāng)涉及到公共參數(shù)之類的萤捆,統(tǒng)一寫入 api/config.js 文件中,通過模塊引入的方式引用公共參數(shù)
  • 2)base文件夾和page文件夾
base文件夾
page文件夾
<!--文件命名規(guī)范請(qǐng)使用 "-" 隔開的寫法命名俗批,即 "demo-page" -->
<template>
  <!--模版的第一個(gè)class定義為文件名俗或,且其他class不用駝峰命名法,皆用 "aaa-bbb" 定義 例如:"example-wrapper"-->
  <!--模版內(nèi)部盡量不要出現(xiàn)定義style屬性岁忘,除非你給我個(gè)理由P廖俊!臭觉!-->
  <!--如果使用組件昆雀,標(biāo)簽也不要使用駝峰,同樣通過 "-" 隔開蝠筑, 例如 <aaa-bbb></aaa-bbb>-->
  <div class="demo">
    <div class="example-wrapper"></div>
  </div>
</template>

<script type="text/ecmascript-6">
  /**
   * 重點(diǎn)D臁!J惨摇M旆狻!
   * 常量全部定義在外面臣镣,主體函數(shù)引用
   * 主體函數(shù)不要涉及到常量的定義
   * 用 "AAA_BBB" 定義常量
   * 例如: const DATA_TYPE = 'xxxxxx'
   */
  export default {
    /**
     * 主體內(nèi)部排序規(guī)則8ㄔ浮V橇痢!
     * 1点待、props
     * 2阔蛉、data
     * 3、生命周期函數(shù) (包括其他函數(shù))
     * 4癞埠、methods
     * 5状原、watcher
     * 6、components
     */
    /**
     * components 內(nèi)部寫法示例
     * components: {
     *  AaaBbb,
     *  BbbCcc
     * }
     */
  }
</script>

<style scoped lang="stylus" rel="stylesheet/stylus">
  /**
   * 樣式寫法C缱佟5咔!
   * 層級(jí)的嵌套盡量跟template的層級(jí)嵌套一樣
   * 不要出現(xiàn)直接定義標(biāo)簽樣式的情況通铲,例如直接定義  div p span img 的樣式毕莱,盡量使用類去寫樣式
   */
</style>

  • 3)common文件夾,主要存放公用圖片颅夺,公共方法朋截、類、工具包吧黄,以及公共樣式质和、全局樣式
  • 4)router 文件夾
示例寫法:
    // const Login = () => import('page/login/login') => 示例寫法
  • 5)小程序page文件夾和base文件夾寫法基本跟vue寫法相似
主要不同的地方 –>
/**
 * 主體內(nèi)部排序規(guī)則!V勺帧!
 * 1厦酬、props
 * 2胆描、data
 * 3、生命周期函數(shù) (包括其他函數(shù))
 * 4仗阅、methods
 * 5昌讲、watch
 * 6、components
 * 7减噪、config
*/
/**
 * components 內(nèi)部寫法示例
 * components = {
 *  ‘a(chǎn)aa-bbb’: AaaBbb,
 *  ‘bbb-ccc’: BbbCcc
 * }
 */

四短绸、git版本控制規(guī)則

  • 1、開發(fā)階段

每個(gè)人開發(fā)各大板塊都新建一個(gè)屬于自己的分支進(jìn)行開發(fā)筹裕,當(dāng)中間插入某些跟當(dāng)前分支無關(guān)的板塊時(shí)醋闭,從master新建一個(gè)分支出來開發(fā)插入的板塊。

  • 2朝卒、發(fā)布測試階段

將每個(gè)人的代碼合并到releasing分支证逻,解決完所有沖突后,合并到released分支抗斤,部署到測試環(huán)境或發(fā)布測試版小程序

  • 3囚企、發(fā)布生產(chǎn)階段

將master主分支與released分支進(jìn)行合并丈咐,部署到生產(chǎn)服務(wù)器。

/**
 *  有補(bǔ)充的可以自己寫進(jìn)來或者自己覺得比較合理的也可以提出來
 *  畢竟我們要統(tǒng)一一套屬于自己團(tuán)隊(duì)的規(guī)范龙宏。
**/
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末棵逊,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子银酗,更是在濱河造成了極大的恐慌辆影,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,695評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件花吟,死亡現(xiàn)場離奇詭異秸歧,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)衅澈,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門键菱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人今布,你說我怎么就攤上這事经备。” “怎么了部默?”我有些...
    開封第一講書人閱讀 168,130評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵侵蒙,是天一觀的道長。 經(jīng)常有香客問我傅蹂,道長纷闺,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,648評(píng)論 1 297
  • 正文 為了忘掉前任份蝴,我火速辦了婚禮犁功,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘婚夫。我一直安慰自己浸卦,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,655評(píng)論 6 397
  • 文/花漫 我一把揭開白布案糙。 她就那樣靜靜地躺著限嫌,像睡著了一般。 火紅的嫁衣襯著肌膚如雪时捌。 梳的紋絲不亂的頭發(fā)上怒医,一...
    開封第一講書人閱讀 52,268評(píng)論 1 309
  • 那天,我揣著相機(jī)與錄音奢讨,去河邊找鬼裆熙。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的入录。 我是一名探鬼主播蛤奥,決...
    沈念sama閱讀 40,835評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼僚稿!你這毒婦竟也來了凡桥?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,740評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤蚀同,失蹤者是張志新(化名)和其女友劉穎缅刽,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蠢络,經(jīng)...
    沈念sama閱讀 46,286評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡衰猛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,375評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了刹孔。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片啡省。...
    茶點(diǎn)故事閱讀 40,505評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖髓霞,靈堂內(nèi)的尸體忽然破棺而出卦睹,到底是詐尸還是另有隱情,我是刑警寧澤方库,帶...
    沈念sama閱讀 36,185評(píng)論 5 350
  • 正文 年R本政府宣布结序,位于F島的核電站,受9級(jí)特大地震影響纵潦,放射性物質(zhì)發(fā)生泄漏徐鹤。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,873評(píng)論 3 333
  • 文/蒙蒙 一邀层、第九天 我趴在偏房一處隱蔽的房頂上張望凳干。 院中可真熱鬧,春花似錦被济、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至泌绣,卻和暖如春钮追,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背阿迈。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評(píng)論 1 272
  • 我被黑心中介騙來泰國打工元媚, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,921評(píng)論 3 376
  • 正文 我出身青樓刊棕,卻偏偏與公主長得像炭晒,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子甥角,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,515評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • 基本準(zhǔn)則 符合web標(biāo)準(zhǔn)网严,html語義化;html嗤无,css震束,JavaScript分離;代碼簡潔有序当犯,盡可能減少冗余...
    喵嗚君閱讀 809評(píng)論 0 1
  • Web前端開發(fā)規(guī)范文檔 規(guī)范目的: 使開發(fā)流程更加規(guī)范化垢村。 通用規(guī)范: TAB鍵用兩個(gè)空格代替(WINDOWS下T...
    蕎葉閱讀 548評(píng)論 0 1
  • 一.規(guī)范目的 使開發(fā)流程更加規(guī)范化。 二.通用規(guī)范 TAB鍵用兩個(gè)空格代替(WINDOWS下TAB鍵占四個(gè)空格嚎卫,L...
    overflow_hidden閱讀 2,436評(píng)論 0 0
  • web開發(fā)約束 項(xiàng)目結(jié)構(gòu): vue項(xiàng)目結(jié)構(gòu) vue命名約束 語義化和命名 應(yīng)以功能或內(nèi)容命名嘉栓,不以表現(xiàn)形式命名;命...
    儂姝沁兒閱讀 4,142評(píng)論 0 7
  • 做女人不容易趣钱,做好女人更不容易,想做十全十美的女人最不容易胚宦。 世上沒有十全十美的女人首有。 所以,女人試著做最好的自己...
    魅麗君子蘭閱讀 1,293評(píng)論 4 12