茄子在线看片免费人成视频,午夜福利精品a在线观看,国产高清自产拍在线观看,久久综合久久狠狠综合

    <s id="ddbnn"></s>
  • <sub id="ddbnn"><ol id="ddbnn"></ol></sub>

  • <legend id="ddbnn"></legend><s id="ddbnn"></s>

    Node.js如何自動審核團(tuán)隊的代碼
    來源:易賢網(wǎng) 閱讀:1122 次 日期:2016-07-29 16:44:59
    溫馨提示:易賢網(wǎng)小編為您整理了“Node.js如何自動審核團(tuán)隊的代碼”,方便廣大網(wǎng)友查閱!

    在項目開發(fā)中,統(tǒng)一團(tuán)隊的代碼風(fēng)格很重要,本文介紹如何用Node.js來自動審核,來提高您的開發(fā)速度。

    前言

    在團(tuán)隊開發(fā)中,無論是寫前端(js,css,html) ,還是后端 ,我們常常需要解決一個問題:如何統(tǒng)一團(tuán)隊代碼風(fēng)格。 這篇文章主要是使用pre-git , eslint , js-beautify 實現(xiàn)代碼風(fēng)格控制。

    下面分別介紹這三個工具和使用方式:

    pre-git

    該工具能實現(xiàn)git hook的功能,在git的流程中插入一些自定義行為,例如commit之前執(zhí)行代碼檢測,如果不通過則報錯。

    eslint

    代碼格式審核工具,可以隨意組合配置各種風(fēng)格,用于組成團(tuán)隊的代碼統(tǒng)一規(guī)范。

    js-beautiful

    js代碼整理、美化工具。

    然后這三個工具互相配合就形成了以下效果:

    1.項目組長定義好eslint的代碼規(guī)范。

    2.使用pre-git在commit之前運行eslint代碼監(jiān)測和js-beautiful代碼美化

    3.如果通過則自動"git add ." ,最后允許push。

    實現(xiàn)

    一:npm安裝上述工具

    $ npm install eslint js-beautify pre-git --save-dev

    二:工具的配置

    在根目錄新建.eslintrc.json文件,并且把規(guī)范配置好,一下給一個精簡版:

    注意:如需更多檢測,請到eslint官網(wǎng)查看

    {

      "rules": {

        "comma-dangle": ["error", "never"],

        "arrow-body-style": ["warn", "always"],

        "no-const-assign": ["error"]

        },

      "parserOptions": {

        "ecmaVersion": 6

      }

    }

    因測試,bash 中使用js-beautiful遞歸多層文件的時候總出現(xiàn)錯誤,所以由一腳本來進(jìn)行代碼美化:

    beatufyjs.js

    const fs = require( 'fs' );

    const path = require( 'path' );

    const child_process = require( 'child_process' );

    for( let arg of process.argv.splice( 2 ) ) {

      let pathName = path.join( process.cwd(),arg );

      if( isFile( path.join( process.cwd(),arg ) ) ) {

        child_process.exec( `./node_modules/js-beautify/js/bin/js-beautify.js -P -E -j -a ${pathName} -r` , function( error, msg, stderr ) {

          console.log( msg.replace('\\\\n','') );

        } );

      } else {

        read_dir( pathName );

      }

    }

    function read_dir( dir ){

      let files = fs.readdirSync( dir );

      for( let file of files ) {

        let pathName = path.join( dir,file );

        if( isFile( pathName ) ) {

          child_process.exec( `./node_modules/js-beautify/js/bin/js-beautify.js -P -E -j -a ${pathName} -r` , function( error, msg, stderr ) {

            console.log( msg.replace( '\\\\n','') );

          } );

        } else {

          read_dir( pathName );

        }

      }

    }

    function isFile( path ){ 

      return exists( path ) && fs.statSync( path ).isFile(); 

    function exists( path ){ 

       return fs.existsSync( path ) || path.existsSync( path ); 

    }

    三:使用上述工具

    在package.json文件中配置:

    {

     "name": "demo",

     "version": "1.0.0",

     "description": "",

     "main": "index.js",

     "scripts": {

      "lint": "./node_modules/.bin/eslint routes runtime utils libs --quiet",

      "lint-fix": "./node_modules/.bin/eslint routes runtime utils libs --quiet --fix",

      "js-beautify": "node --harmony --use_strict ./bin/beatufyjs.js libs middlewares index.js "

     },

     "author": "kelvv",

     "license": "ISC",

     "config": {

      "pre-git": {

       "commit-msg": "",

       "pre-commit": [

        "npm run lint-fix",

        "npm run js-beautify",

        "git add ."

       ],

       "pre-push": [],

       "post-commit": [],

       "post-checkout": [],

       "post-merge": []

      }

     },

     "devDependencies": {

      "eslint": "^2.12.0",

      "js-beautify": "^1.6.3",

      "pre-git": "^3.9.1"

     }

    }

    此時當(dāng)你修改其中一個文件,然后"git add && git commit -m 'msg' "的時候,pre-commit中的三條命令就會執(zhí)行,如果中途有錯就會停止提交,修改完畢后再繼續(xù)提交。

    有一點需要注意的是,有的格式問題不足以報錯的話,改方法會自動修改優(yōu)化代碼,并且自動添加修改,最后一步,執(zhí)行:git push即可!可以結(jié)合單元測試,更佳

    總結(jié)

    以上就是為大家整理的如何用Node.js自動審核團(tuán)隊的代碼的全部內(nèi)容,有需要的可以進(jìn)行參考學(xué)習(xí)。

    更多信息請查看網(wǎng)絡(luò)編程
    易賢網(wǎng)手機(jī)網(wǎng)站地址:Node.js如何自動審核團(tuán)隊的代碼
    由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

    2026上岸·考公考編培訓(xùn)報班

    • 報班類型
    • 姓名
    • 手機(jī)號
    • 驗證碼
    關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機(jī)站點 | 投訴建議
    工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
    云南網(wǎng)警備案專用圖標(biāo)
    聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
    云南網(wǎng)警報警專用圖標(biāo)