Stateless vs Stateful Widgets trong Flutter

Trong Flutter, có hai loại chính của Widgets là Stateless và Stateful. Đây là hai loại Widgets có vai trò quan trọng trong xây dựng giao diện người dùng của ứng dụng.

Stateless Widgets (Widgets Không Có Trạng Thái)

  • Stateless Widgets là những Widgets không có trạng thái và không thay đổi sau khi được tạo. Khi trạng thái của ứng dụng thay đổi, Stateless Widgets sẽ được vẽ lại với các giá trị mới nhưng không lưu trữ trạng thái.

  • Stateless Widgets phù hợp với những thành phần giao diện người dùng cơ bản và không thay đổi. Ví dụ: Text, Icon, Image, RaisedButton.

  • Stateless Widgets được tạo bằng cách kế thừa từ lớp StatelessWidget và viết phương thức build() để trả về giao diện hiển thị.

Stateful Widgets (Widgets Có Trạng Thái)

  • Stateful Widgets là những Widgets có trạng thái và có thể thay đổi trong quá trình chạy. Khi trạng thái thay đổi, Stateful Widgets sẽ tự động vẽ lại để hiển thị các thay đổi mới.

  • Stateful Widgets thường được sử dụng khi bạn muốn tạo các thành phần giao diện người dùng tương tác, cần lưu trữ trạng thái của chúng và thay đổi theo sự tương tác của người dùng. Ví dụ: Form, Checkbox, DropdownButton.

  • Stateful Widgets được tạo bằng cách kế thừa từ lớp StatefulWidget và kết hợp với một lớp riêng biệt để lưu trữ trạng thái và quản lý việc cập nhật giao diện.

 

Kết Luận:

Stateless và Stateful Widgets là hai khái niệm quan trọng trong Flutter. Stateless Widgets dùng cho các thành phần không có trạng thái và không thay đổi, trong khi Stateful Widgets dùng cho các thành phần cần lưu trữ và thay đổi trạng thái. Việc sử dụng đúng loại Widgets cho từng thành phần giúp bạn xây dựng giao diện người dùng linh hoạt và hiệu quả.