Skip to content

CStatus

Chỉ báo trạng thái hai giá trị: một chấm màu, kèm nhãn hoặc tooltip. Không phụ thuộc thư viện icon — chấm vẽ bằng CSS.

Dùng khi: trường dữ liệu chỉ có hai trạng thái đối lập — hoạt động/ngừng, bật/tắt, còn hạn/hết hạn, đã kết nối/mất kết nối.

Không dùng khi: trạng thái có từ ba giá trị trở lên (mới, đang xử lý, hoàn thành, huỷ) — dùng CTag để mỗi giá trị có nhãn chữ riêng.

Không bật show-text thì nhãn nằm trong tooltip — gọn cho cột hẹp, nhưng người dùng phải rê chuột mới đọc được. Cột đủ rộng thì bật show-text.

Giá trị và nhãn tuỳ nghiệp vụ

status so sánh với active-value (mặc định 1); true luôn được coi là đang hoạt động. Mọi giá trị khác đều là "không hoạt động" — nghĩa là dữ liệu có ba trạng thái sẽ bị gộp còn hai, đây là lý do để chuyển sang CTag.

Nhãn nên nói đúng nghiệp vụ ("Đang hợp tác" / "Đã ngừng") thay vì mặc định chung chung.

Trong bảng

API

Props

TênKiểuMặc địnhMô tả
status*string | number | booleanfalseGiá trị trạng thái lấy từ dữ liệu (thường là 1/0 hoặc true/false).
activeValuestring | number | boolean1Giá trị được coi là "đang hoạt động"; khác giá trị này là ngừng.
activeTextstring'Hoạt động'Nhãn khi hoạt động.
inactiveTextstring'Không hoạt động'Nhãn khi ngừng hoạt động.
showTextbooleanfalseHiện nhãn chữ bên cạnh chấm.

Giao diện

Trạng tháiChấmChữ
Hoạt động--tasco-color-success + quầng --tasco-color-success-soft--tasco-color-success-text
Ngừng--tasco-color-error + quầng --tasco-color-error-soft--tasco-color-error

Chấm là đồ hoạ nên chỉ cần tương phản 3:1; phần chữ dùng biến -text để đạt 4.5:1 — xem Theme & design token. Class BEM: c-status, c-status--active, c-status--inactive, c-status__dot, c-status__text.

Khả năng tiếp cận

  • Màu không phải kênh thông tin duy nhất: bật show-text, hoặc giữ tooltip để nhãn còn đọc được.
  • Tooltip của antd hiện khi focus bằng bàn phím, không chỉ khi rê chuột.
  • Tránh đặt hai CStatus sát nhau cho hai ý nghĩa khác nhau mà không có nhãn — người dùng không đoán được chấm nào nói về cái gì.

Lưu ý

  • Dữ liệu trả '1' (chuỗi) trong khi active-value1 (số) thì so sánh không khớp: hai kiểu khác nhau. Chuẩn hoá kiểu ở fetcher, hoặc khai active-value="1" cho đúng.
  • Trạng thái mang nghĩa xấu mà vẫn đang "hoạt động" (ví dụ "đang bị khoá") thì màu xanh sẽ gây hiểu nhầm — trường hợp này dùng CTag với màu theo ngữ nghĩa.

Liên quan

  • CTag — trạng thái nhiều giá trị.
  • CTable — cột trạng thái.