Skip to content

Conversation

@frost-cy
Copy link
Contributor

…ed in the constructor.

Motivation for features / changes

When public class fields are enabled, such cases throw a TS error similar to this.

third_party/javascript/angular_components/src/cdk/platform/platform.ts:37:29 - error TS2729: Property '_platformId' is used before its initialization. 37 isBrowser: boolean = this._platformId ~~~~~~~~~~~ third_party/javascript/angular_components/src/cdk/platform/platform.ts:87:15 87 constructor(@Inject(PLATFORM_ID) private _platformId: Object) {} ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ '_platformId' is declared here. 

This error is fixed by moving the initializer of such class members into the constructor.

This is a no-op change

See go/lsc-fix-properties-used-before-initialization

Technical description of changes

Fix initializer of instance members that reference identifiers declared in the constructor.

Screenshots of UI changes (or N/A)

N/A

Detailed steps to verify changes work correctly (as executed by you)

This is a no-op change

Alternate designs / implementations considered (or N/A)

N/A

@frost-cy frost-cy marked this pull request as ready for review July 17, 2024 20:11
@rileyajones
Copy link
Contributor

Unfortunately our OSS project uses different lint rules. Please run yarn fix-lint. Alternatively patch this commit

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants