Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Accessing Event Targets with Type Guards | Safe Event Handling and Form Validation
TypeScript and the DOM

bookAccessing Event Targets with Type Guards

index.ts

index.ts

copy

When you handle events in the DOM, the event.target property refers to the element that triggered the event. However, TypeScript types event.target as EventTarget | null, which is a very broad type and does not guarantee that the target will have the properties you expect. For instance, if you assume event.target is always an HTMLButtonElement and try to access disabled or textContent, you could run into errors if the event was actually triggered by a different element, such as a div or a span. This is a common pitfall when working with DOM events: accessing properties that do not exist on the actual target.

TypeScript helps you avoid these mistakes by requiring you to narrow the type of event.target before accessing properties specific to certain elements. This is where type guards come in. By using a type guard like instanceof HTMLButtonElement, you tell TypeScript to treat target as a button only if it really is one. This prevents runtime errors and makes your code safer and more predictable.

1. Why should you use a type guard when accessing event.target in TypeScript?

2. What can happen if you access properties on event.target without checking its type?

question mark

Why should you use a type guard when accessing event.target in TypeScript?

Select the correct answer

question mark

What can happen if you access properties on event.target without checking its type?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 3

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Suggested prompts:

Can you show an example of how to use a type guard with event.target in TypeScript?

What are some common mistakes developers make when handling event.target in TypeScript?

Can you explain more about how type guards work in TypeScript?

Awesome!

Completion rate improved to 5.56

bookAccessing Event Targets with Type Guards

Свайпніть щоб показати меню

index.ts

index.ts

copy

When you handle events in the DOM, the event.target property refers to the element that triggered the event. However, TypeScript types event.target as EventTarget | null, which is a very broad type and does not guarantee that the target will have the properties you expect. For instance, if you assume event.target is always an HTMLButtonElement and try to access disabled or textContent, you could run into errors if the event was actually triggered by a different element, such as a div or a span. This is a common pitfall when working with DOM events: accessing properties that do not exist on the actual target.

TypeScript helps you avoid these mistakes by requiring you to narrow the type of event.target before accessing properties specific to certain elements. This is where type guards come in. By using a type guard like instanceof HTMLButtonElement, you tell TypeScript to treat target as a button only if it really is one. This prevents runtime errors and makes your code safer and more predictable.

1. Why should you use a type guard when accessing event.target in TypeScript?

2. What can happen if you access properties on event.target without checking its type?

question mark

Why should you use a type guard when accessing event.target in TypeScript?

Select the correct answer

question mark

What can happen if you access properties on event.target without checking its type?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 3
some-alt