React 组件

UGLink 链接

用于页面导航、资源跳转与下载,保留原生链接语义,并统一下划线、语义色、尺寸、外链安全和禁用行为。

导入方式

按需从包入口导入组件,并在应用入口引入一次样式文件。

tsx
import { UGLink } from '@ug666/ui-react'

基础用法

链接必须指向真实目标;当前页面可通过 aria-current 标记。

语义色

颜色只表达语义,不改变链接的导航行为。

下划线

正文中的链接优先保留下划线;导航密集区可按场景调整。

尺寸

字号可显式设置,也可统一继承 UGConfigProvider。

外链与下载

外链自动补充安全属性;download 等原生属性直接透传。

禁用状态

禁用链接不会跳转、不会响应点击,也不会进入 Tab 顺序。

图标内容

图标属于链接内容;纯图标链接仍需提供 aria-label。

属性

属性类型默认值说明
hrefstring目标地址,行为与原生 a 元素一致;使用方应校验不可信 URL。
toneLinkTone'primary'链接的语义色:neutral、primary、success、warning、danger、info 或 inherit。
underlineLinkUnderline'hover'控制下划线始终显示、悬停显示或从不显示。
size'sm' | 'default' | 'lg'ConfigProvider链接字号;未显式设置时继承全局尺寸。
disabledbooleanConfigProvider / false移除跳转能力和 Tab 焦点,并设置 aria-disabled。
externalbooleanfalse按外链处理;默认在新标签页打开并补充安全 rel。
showExternalIconbooleanfalse外链时在文本末尾显示外链标识。
startIcon / endIconReactNode在链接文本前后放置装饰图标。
targetHTMLAttributeAnchorTarget原生 target;设为 _blank 时自动补充安全 rel。
relstring原生 rel;新标签页打开时会与 noopener、noreferrer 合并。
downloadboolean | string透传原生下载属性。
childrenReactNode链接内容,可组合文本与图标。
onClickMouseEventHandler原生点击事件;禁用时不会触发。
classNamestring追加样式类,用于业务侧局部覆盖。