序文
チームの開発では、フロントエンド(JS、CSS、HTML)またはバックエンドの執筆であろうと、問題を解決する必要があることがよくあります。チームのコードスタイルを統合する方法です。この記事では、主にPre-Git、Eslint、およびJS-Beautifyを使用して、コードスタイルコントロールを実装しています。
以下は、3つのツールと使用方法です。
pre-git
このツールは、gitフックの関数を実装し、コミット前にコード検出を実行するなど、いくつかのカスタム動作をGitプロセスに挿入し、渡されない場合、エラーが報告されます。
eslint
コード形式の監査ツールでは、さまざまなスタイルを自由に組み合わせて構成し、それを使用してチームの統合コード仕様を形成できます。
JS-Beautiful
JSコード組織と美化ツール。
次に、3つのツールが互いに協力して、次の効果を作成します。
1.プロジェクトリーダーは、ESLINTのコード仕様を定義します。
2。プレギットを使用して、コミットする前にESLINTコード監視とJS-Beautifulコードの美化を実行します
3。渡された場合、自動的に「git add」。プッシュが許可されます。
成し遂げる
1:npm上記のツールをインストールします
$ npm install eslint js-beautify pre-git --save-dev
2:ツール構成
ルートディレクトリに新しい.eslintrc.jsonファイルを作成し、仕様を構成し、簡素化されたバージョンを提供します。
注:さらにテストが必要な場合は、ESLINTの公式Webサイトにアクセスしてください
{"ルール":{"comma-dangle": "error"、 "never"]、 "arrow-bodyスタイル":["Warn"、 "Always"]、 "no const-assign":["error"]}、 "parseroptions":{"ecmaversion":6}}}テストのため、bashでJS-Beautiful Recursive Multi-Layerファイルを使用する場合、常にエラーがあります。したがって、スクリプトはコードを美化するために使用されます。
Beatufyjs.js
const fs = require( 'fs'); const path = require( 'path'); const child_process = require( 'child_process'); if(isfile(path.join(process.cwd()、arg))))){child_process.exec( `./node_modules/js-bin/js-beautify.js -p -e -j -a $ {pathname} -r`、機能(誤差、msg、stderr.log(console.log) msg.replace( '/// n'、 '')); } else {read_dir(pathname); }} function read_dir(dir){let files = fs.readdirsync(dir); for(ファイルのファイルを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(); }関数が存在する(path){return fs.existsync(path)|| path.existssync(path); }3:上記のツールを使用します
package.jsonファイルで構成:
{"name": "demo"、 "version": "1.0.0"、 "description": "" ""、 "main": "index.js"、 "scripts":{"lint": "./node_modules/.bin/eslintルートランタイムutils libs-quiet"、 "lintfix" 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-ceckout":[]、 "post-merge":[]}}、 "dev-dependencies":{"eslint": "^2.12.0"、 "js-beautify": "^1.6.3"、 "^3.3.1"}}}この時点で、ファイルの1つを変更してから「git add && git commit -m 'msg'」を変更すると、事前コミットの3つのコマンドが実行されます。中央にエラーがある場合、修正が完了した後、提出が停止し、提出が継続されます。
注意すべきことの1つは、いくつかのフォーマットの問題がエラーを報告するのに十分ではない場合、変更方法は最適化コードを自動的に変更し、自動的に追加および変更することです。最後のステップでは、実行するだけです: git push !より良いユニットテストと組み合わせることができます
要約します
上記は、node.jsを使用してチームのコードを自動的に確認する方法のすべての内容です。必要な場合は、参照できます。