Avoid non-null assertions after an optional chain

このページは日本語には対応しておりません。随時翻訳に取り組んでいます。
翻訳に関してご質問やご意見ございましたら、お気軽にご連絡ください

Metadata

ID: typescript-best-practices/no-non-null-optional-chain

Language: TypeScript

Severity: Warning

Category: Error Prone

Description

Using a non-null assertion after an optional chain expression indicates bad type safety.

Non-Compliant Code Examples

foo?.bar!;
foo?.['bar']!;
foo?.bar()!;
foo.bar?.()!;
(foo?.bar)!.baz;
(foo?.bar)!().baz;
(foo?.bar)!;
(foo?.bar)!();
(foo?.bar!);
(foo?.bar!)();

Compliant Code Examples

foo.bar!;
foo.bar!.baz;
foo.bar!.baz();
foo.bar()!;
foo.bar()!();
foo.bar()!.baz;
foo?.bar;
foo?.bar();
(foo?.bar).baz!;
(foo?.bar()).baz!;
foo?.bar!.baz;
foo?.bar!();
foo?.['bar']!.baz;
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains

Seamless integrations. Try Datadog Code Analysis