Link
Link dẫn người dùng tới trang, tài nguyên hoặc vị trí khác, nằm trong đoạn văn hoặc đứng riêng.
Import
Cài từ npm, chép mã nguồn vào dự án bằng @yugen-ui/cli hoặc shadcn CLI, hoặc import thẳng khi làm việc trong repo này.
// npm install yugen-uiimport { Link } from "yugen-ui";Biến thể
Mỗi ô là một mẫu độc lập: hover để Copy, hoặc bấm Code để xem mã nguồn.
Bằng việc tiếp tục, bạn đồng ý với Điều khoản dịch vụ và Chính sách quyền riêng tưcủa chúng tôi.
Inline trong đoạn văn
inline luôn gạch chân để không chỉ dựa vào màu sắc.
Trang ngoài & asChild
external thêm icon và mở tab mới; asChild giữ style khi bọc phần tử khác.
Cách dùng
- Nhãn mô tả đích đến (“Xem báo cáo quý”), không dùng “Bấm vào đây”.
- Dùng inline cho link trong câu để luôn có gạch chân.
- Báo trước khi link mở tab mới (external).
- Không dùng Link cho hành động thay đổi dữ liệu — dùng Button.
- Không tô màu brand cho chữ thường để giả làm link.
Props
| Prop · Kiểu | Mặc định | Mô tả |
|---|---|---|
| appearance"default" | "subtle" | Mặc định: "default" | Màu brand hoặc neutral. |
| inlineboolean | Mặc định: false | Trong đoạn văn: luôn gạch chân, kế thừa cỡ chữ. |
| disabledboolean | Mặc định: — | Bỏ href, aria-disabled, chặn click. |
| externalboolean | Mặc định: — | Thêm icon mở ngoài, target="_blank", rel="noopener noreferrer". |
| asChildboolean | Mặc định: — | Áp style lên phần tử con (link của router). |
| href, target, onClick…AnchorHTMLAttributes | Mặc định: — | Truyền xuống thẻ <a>. |
Messages
Chữ có sẵn của component: nhãn, aria-label, thông báo cho trình đọc màn hình.
Mặc định là tiếng Anh. Đổi qua prop messages của YugenProvider, theo namespace bên dưới; messagesVi chứa bản tiếng Việt. Xem Ngôn ngữ giao diện.
messages.link
| Khoá · Kiểu | Mặc định (tiếng Anh) | messagesVi |
|---|---|---|
| newTabstring Chữ ẩn (sr-only) sau link | Mặc định (tiếng Anh)"(opens in new tab)" | messagesVi"(mở trong thẻ mới)" |