Skip to content

require-passing-this

recommended を使用した場合、このルールが有効になります。
🔧 このルールによってエラーになるコードは ESLint の --fix コマンド で自動修正できます。

このルールは Constructthis を渡すことを強制します。
(このルールは Construct を継承するクラスにのみ適用されます)

AWS CDK リソースを作成するとき、Constructthis を渡すことは正しいリソース階層を維持するために重要です。
scope のような他の値を使用すると、次のような問題が発生する可能性があります

  • 生成される CloudFormation テンプレートのリソース階層が正しくない
  • 予期しないリソースの命名

✅ Correct Example

ts
import { Bucket } from "aws-cdk-lib/aws-s3";
import { Construct } from "constructs";

export class MyConstruct extends Construct {
  constructor(scope: Construct, id: string) {
    super(scope, id);

    // ✅ this を使用できます
    new Bucket(this, "SampleBucket");
  }
}

❌ Incorrect Example

ts
import { Bucket } from "aws-cdk-lib/aws-s3";
import { Construct } from "constructs";

export class MyConstruct extends Construct {
  constructor(scope: Construct, id: string) {
    super(scope, id);

    // ❌ scope を使用すべきではありません
    new Bucket(scope, "SampleBucket");
  }
}