Giao diện
Câu hỏi thường gặp (FAQ) — Text Copy
Sử dụng
Nút copy không hiển thị?
Kiểm tra theo thứ tự:
- Plugin đã bật? Vào Plugin Manager xác nhận
plugin-text-copyđang active - Field đã bật copy? Vào Design Mode → Field Settings → kiểm tra "Hiển thị nút sao chép" đã bật
- Đúng loại field? Plugin chỉ hoạt động với field dùng component
Input— Textarea, Rich Text, Select không hỗ trợ - Có giá trị? Trong chế độ read-pretty, nút copy chỉ hiện khi field có giá trị (không rỗng)
- Hover chưa? Trong chế độ read-pretty, nút copy ẩn — cần di chuột lên field để hiện
Copy không hoạt động (click nhưng không sao chép)?
Nguyên nhân phổ biến nhất: trang web không chạy trên HTTPS. Clipboard API yêu cầu secure context:
| Môi trường | Clipboard API | Giải pháp |
|---|---|---|
https://... | Hoạt động | Không cần làm gì |
http://localhost | Hoạt động | Không cần làm gì |
http://192.168.x.x | Không hoạt động | Chuyển sang HTTPS hoặc dùng localhost |
http://domain.com | Không hoạt động | Cài SSL certificate |
Có thể copy nội dung nhiều field cùng lúc không?
Hiện tại không — plugin chỉ copy từng field riêng lẻ. Nếu cần copy nhiều field:
- Dùng chức năng Export để xuất dữ liệu ra file
- Hoặc phát triển plugin tùy chỉnh kết hợp nhiều field value
Nút copy hiện ở vị trí nào?
Nút nằm bên phải field input, dùng prop addonAfter của Antd Input. Trong chế độ:
- Edit mode: Hiển thị luôn, nằm sát bên phải input
- Read-pretty mode: Ẩn mặc định, hiện khi hover lên field (opacity transition)
Cấu hình
Bật copy cho tất cả field cùng lúc được không?
Không có cài đặt "bật tất cả" — phải vào từng field trong Design Mode để bật. Lý do: không phải field nào cũng cần nút copy (ví dụ field boolean, field mật khẩu).
Cài đặt copy có mất khi cập nhật plugin không?
Không. Cài đặt được lưu trong UI schema (x-component-props.addonAfter), không nằm trong plugin. Cập nhật, tắt/bật lại plugin không ảnh hưởng các field đã cấu hình.
Có thể tùy chỉnh icon hoặc vị trí nút copy không?
Plugin hiện dùng Typography.Text copyable mặc định của Antd — icon là biểu tượng clipboard. Để tùy chỉnh:
- Icon: Override
Typography.Textcopyable icon qua Antd theme config - Vị trí: Không thể thay đổi — luôn ở
addonAfter(bên phải input)
Xử lý sự cố
Console báo lỗi "DOMException: Document is not focused"?
Lỗi này xảy ra khi cố copy trong khi trang web không có focus (ví dụ DevTools đang focus). Giải pháp: click vào trang web trước khi bấm nút copy.
Nút copy xuất hiện nhưng rất nhỏ?
Kiểm tra theme token marginXXS trong cấu hình theme. Plugin dùng token.marginXXS cho marginLeft — nếu token quá nhỏ hoặc bằng 0, nút sẽ bị dính sát field.
Field trong Table có hỗ trợ không?
Có. Plugin sử dụng useColumnSchema hook để lấy schema của column trong Table. Bạn có thể bật copy cho field trong cả Form lẫn Table column bằng cách giống nhau qua Field Settings.