保存時に使用される入力規則
Aura コンポーネントコードを保存するときに実行される検証では、次のルールが使用されます。
これらのルールのいずれかの検証に失敗すると、コードへの変更は保存されません。
Lightning プラットフォームのルール
これらのルールは、Aura コンポーネントの JavaScript コードに固有のルールです。これらのカスタムルールは、Salesforce によって記述および維持されます。
- Aura API (aura-api) の検証
- このルールは、フレームワーク API の使用が公開されているドキュメントに従っているかどうかを検証します。ドキュメント化されていない機能や非公開機能の使用は許可されません。
- セキュアドキュメント公開 API (secure-document) の検証
- このルールは、サポート対象の関数のみを検証し、document グローバルのプロパティが使用されます。
- セキュアウィンドウ公開 API (secure-window) の検証
- このルールは、サポート対象の関数のみを検証し、window グローバルのプロパティが使用されます。
一般的な JavaScript ルール
これらのルールは、Lightning コンポーネントに必須の JavaScript の基本的な使用法を正しく適用する、一般的な JavaScript ルールです。これらのルールは、ESLint ツールに組み込まれています。
- caller と callee の使用の禁止 (no-caller)
- arguments.caller と arguments.callee を使用できないようにします。これらは、Lightning Locker で有効化される厳格モードになっている場合は、ECMAScript 5 以降でも禁止されています。
- ネイティブオブジェクトの拡張の禁止 (no-extend-native)
- プロトタイプを変更して組み込みの JavaScript オブジェクト (Object や Array など) の動作を変更できないようにします。
- __Iterator__ プロパティの使用の禁止 (no-iterator)
- 無効な __iterator__ プロパティを使用できないようにします。代わりに JavaScript のイテレータとジェネレータを使用してください。
- グローバルオブジェクトプロパティの関数としてのコールの禁止 (no-obj-calls)
- Math、JSON、および Reflect グローバルオブジェクトを関数であるかのようにコールできないようにします。たとえば、Math() は許可されていません。これは、ECMAScript 5 の仕様に従っています。
- __proto__ の使用の禁止 (no-proto)
- ECMAScript 3.1 で非推奨になった無効な __proto__ プロパティを使用できないようにします。代わりに Object.getPrototypeOf() を使用してください。
- スクリプト URL の使用の禁止 (no-script-url)
- javascript: URL を使用できないようにします。
- with ステートメントの禁止 (no-with)
- with ステートメントを使用できないようにします。このステートメントは、影響や動作の予測と確認を難しくするやり方で、オブジェクトのメンバーを現在の範囲に追加します。