Event Handling – Xử Lý Sự Kiện Cơ Bản trong React

0 0 0

Người đăng: Thanh Hung

Theo Viblo Asia

Khi xây dựng các ứng dụng web tương tác, việc xử lý sự kiện (event handling) là điều không thể thiếu. Trong React – thư viện JavaScript phổ biến để xây dựng giao diện người dùng, xử lý sự kiện được thực hiện theo một cách rõ ràng, dễ hiểu, và linh hoạt.

1. Event là gì?

Trong bối cảnh lập trình web, "event" là những tương tác của người dùng với trình duyệt, ví dụ:

  • Click chuột
  • Gõ phím
  • Di chuyển chuột
  • Gửi form
  • Thay đổi nội dung input

React cung cấp hệ thống event riêng tên là SyntheticEvent – một lớp bao bọc event gốc của trình duyệt giúp đảm bảo sự tương thích giữa các trình duyệt khác nhau.

2. Cách viết sự kiện trong React

🔸 So sánh HTML và React:

HTML truyền thống:

<button onclick="handleClick()">Click me</button>

React JSX:

<button onClick={handleClick}>Click me</button>

🔹 Điểm cần lưu ý:

  • Tên sự kiện trong React viết camelCase: onClick, onChange, onSubmit,...
  • Không truyền chuỗi, mà truyền hàm thực thi: {handleClick} thay vì "handleClick()"

3. Ví dụ cơ bản

import React from 'react'; function ClickExample() { const handleClick = () => { alert("Bạn vừa click!"); }; return <button onClick={handleClick}>Click me</button>;
}

4. Truyền tham số vào event handler

React không cho phép bạn truyền tham số trực tiếp vào onClick={handleClick(param)} vì điều đó sẽ thực thi ngay lập tức. Thay vào đó, dùng arrow function:

<button onClick={() => handleClick('React Rocks!')}> Click me
</button>
const handleClick = (msg) => { alert(msg);
};

5. Xử lý form với onChange & onSubmit

import React, { useState } from 'react'; function NameForm() { const [name, setName] = useState(''); const handleChange = (e) => setName(e.target.value); const handleSubmit = (e) => { e.preventDefault(); alert(`Xin chào, ${name}`); }; return ( <form onSubmit={handleSubmit}> <input type="text" value={name} onChange={handleChange} /> <button type="submit">Gửi</button> </form> );
}

6. Các loại event phổ biến trong React

Sự kiện Ý nghĩa
onClick Khi người dùng click
onChange Khi input, select thay đổi
onSubmit Khi form được submit
onKeyDown Khi người dùng nhấn phím
onMouseEnter Khi chuột đi vào phần tử
onFocus Khi input được focus
onBlur Khi input bị mất focus

7. So sánh với JavaScript thuần

JavaScript truyền thống:

<button id="btn">Click me</button> <script> document.getElementById("btn").addEventListener("click", () => { alert("Clicked!"); });
</script>

React JSX:

<button onClick={() => alert("Clicked!")}>Click me</button>

✅️ Ưu điểm của React:

  • Gọn gàng
  • Không cần thao tác với DOM
  • Dễ bảo trì, mở rộng
  • Hoạt động thống nhất qua các trình duyệt

🔚 Kết luận

Hiểu và sử dụng đúng Event Handling trong React là kỹ năng cơ bản nhưng rất quan trọng để xây dựng các ứng dụng web tương tác tốt. Việc xử lý sự kiện trong React đơn giản hơn, rõ ràng hơn nhờ cú pháp JSX và sự hỗ trợ của SyntheticEvent. Khi bạn đã làm chủ kỹ thuật này, bạn sẽ dễ dàng tạo ra những trải nghiệm người dùng mượt mà, phản hồi nhanh chóng.

Bình luận

Bài viết tương tự

- vừa được xem lúc

[Javascript] Event Handlers và Event Listeners

. Events. Event hiểu đơn giản là các hành động diễn ra trong trình duyệt có thể được tạo bởi người dùng hoặc chính trình duyệt.

0 0 21

- vừa được xem lúc

Những điều cần lưu ý và sử dụng Hook trong React (Phần 5)

V. Sử dụng useRef như thế nào cho đúng.

0 0 144

- vừa được xem lúc

7 Cách viết code React "clean" hơn

Mở đầu. Là nhà phát triển React, tất cả chúng ta đều muốn viết code sạch hơn, đơn giản hơn và dễ đọc hơn. 1. Sử dụng JSX shorthands.

0 0 202

- vừa được xem lúc

Create app covid-19 use Reactjs

Chào các bạn hôm nay mình sẽ chia sẻ với các bạn một app covid-19, để mọi người cùng tham khảo, tính năng của App này chỉ đơn giản là show số liệu về dịch Covid của các nước trên thế giới như: Số ngườ

0 0 58

- vừa được xem lúc

ReactJS Custom Hooks

ReactJS cung cấp rất nhiều cho bạn các hook mà bạn có thể sử dụng hằng ngày vào project của mình. Nhưng bên cạnh đó bạn có thể tự tạo ra các hook của riêng bạn để sử dụng, làm cho việc tối ưu hóa code

0 0 82

- vừa được xem lúc

3 cách để tránh re-render khi dùng React context

3 cách để tránh re-render khi dùng React context. Nếu đã từng sử dụng React context cho dự án của bạn, và gặp phải tình trạng các component con - Consumer re-render rất nhiều lần, thậm chí bị sai logi

0 0 40