私達のcocos 2 dx-js規格
2498 ワード
私達のJavaScript規格は全体的にAirbnbのjs規格に基づいています.cocococos 2 dx-jsとプロジェクト自体に適用されるいくつかのカスタムルールを加えています.
なぜAirbnbのjs仕様を選択しましたか?认可度が高く、この规范は今やJs国际基准になりそうです.AirbnbのGithubを見てください.恐怖の47000+のstar があります.公式は、Eslentプラグインのサポートを提供します.WebStormを結合して、完璧です. はES 6、Reactなどに対応しています.cococos 2 dx-jsの問題のため、妥当を期して、私達は現在中のES 5規格 を使っています.
WebStorm+Eslint+Airbnbのjs仕様の使い方については、もう一つのブログを参照してください.
カスタムルール:
まずプロジェクトのeslintrcファイルを見てください.airbbanに基づいていくつかの簡単な調整があります.コメントはすべて明確です.説明はもうしません. jsファイルの名前は普遍的な習慣に従って、全部小文字で、複数の単語の中間は-接続で、例えばmain.js、scene-mail.js プロジェクトのカスタムクラスは、ラクダのピークの名前を使用して、最初の文字を大文字で、クラスを継承し、最初の単語は親の名前です.このような目的は、cococos 2 dx-js自体と統一している一方で、C+++/C倈の習慣を継続することです.例えば、 は、グローバル変数の混乱を回避するために、上記のコードのような名前空間を使用して、カスタムクラスは全部luコマンド空間に入れます.例えば、全定数はcoコマンド空間に入れて、モジュール別の宣言に従います. クラスの内部の大域変数名はmで始まり、ラクダ形であり、名前の最初の単語は変数タイプを見ることができます. 類の方法名、頭文字小文字:
なぜAirbnbのjs仕様を選択しましたか?
WebStorm+Eslint+Airbnbのjs仕様の使い方については、もう一つのブログを参照してください.
カスタムルール:
まずプロジェクトのeslintrcファイルを見てください.airbbanに基づいていくつかの簡単な調整があります.コメントはすべて明確です.説明はもうしません.
{
"extends": "airbnb/legacy",
"plugins": [
"import"
],
"rules": {
// 4
"indent": ["error", 4],
//
"comma-dangle": ["error", "always"],
// , html , C++、C# ,
"quotes": [1, "double"],
// this , cocos2dx-js this._super
"no-underscore-dangle": ["error", { "allowAfterThis": true }]
},
"globals": {
// cocos2dx-js
"cc": true,
"res": true,
"gResources": true,
// lu , co
"lu": true,
"co": true
}
}
最後にcococos 2 dx-jsに関する命名規則を追加します.lu.LayerMain = cc.Layer.extend({
...
});
lu.SceneMain = cc.Scene.extend({
...
});
//
var co = {};
//
co.MainConfig = {
UpdateMode: true,
};
//
co.Wheel = {
WheelNodeItemCount: 11,
WheelNodeItemSpace: 220,
WheelNodeItemSize: 244,
WheelNodeItemImg: ["bar1", "bar2", "bar3", "red7", "wild", "x2", "x3", "x5",],
};
lu.Wheel = cc.Node.extend({
mNode1: null,
mNode2: null,
mIsRolling: false,
mHeight: 0,
});
lu.LayerMain = cc.Layer.extend({
init: function () {
},
startLoad: function () {
},
});