组件的完整清单见仓库首页,样式变量的说明在安装指南里。
import { Link, Text } from '@hina-ui/react'
export default function Demo() {
return (
<Text className="max-w-lg">
组件的完整清单见
<Link href="https://github.com/Hikarinagi/ui" target="_blank" rel="noreferrer" underline>
仓库首页
</Link>
,样式变量的说明在安装指南里。
</Text>
)
}
tsx
用法
import { Link } from '@hina-ui/react'
ts
组件默认渲染为原生的 a,属性原样传递,因此 href、target、rel 都照常书写。默认使用强调色,不带下划线。
import { Link } from '@hina-ui/react'
export default function Demo() {
return <Link href="#usage">回到用法一节</Link>
}
tsx
示例
色调
accent 用于正文与导航中的普通链接,neutral 用于本身已在强调区域内、不需要再次着色的链接,例如面包屑。
下划线
设置 underline 显示下划线,静止时线条较淡,悬停时加深。正文中密集出现的链接建议开启,便于与普通文字区分。
路由链接
as 接受组件,可以渲染为 next/link 或者其他路由组件,此时按该组件的属性书写,例如 href。也可以设置 asChild,把路由链接作为唯一的子元素。
'use client'
import NextLink from 'next/link'
import { Link } from '@hina-ui/react'
export default function Demo() {
return (
<Link as={NextLink} href="/components/button" underline>
跳转到 Button 页
</Link>
)
}
tsx
正文中的链接
Prose 会为其中的原生 a 应用强调色与下划线。渲染 Markdown 或者富文本时不需要替换标签。
正文中的链接不需要单独引入组件,默认带下划线。
import { Prose } from '@hina-ui/react'
export default function Demo() {
return (
<Prose className="max-w-lg">
<p>
正文中的
<a href="#prose">链接</a>
不需要单独引入组件,默认带下划线。
</p>
</Prose>
)
}
tsx
无障碍
- 链接文字应当说明目的地,避免使用“点击这里”。
- 在新标签页打开时补上
rel="noreferrer"。
API
Props
| 属性 | 类型 | 默认值 | 说明 |
|---|---|---|---|
tone | 'accent' | 'neutral' | 'accent' | 语义色调 |
underline | boolean | false | 是否显示下划线 |
as | string | Component | 'a' | 渲染的元素或组件 |
asChild | boolean | false | 不渲染自身,合并至唯一的子元素 |
className | string | — | 追加至根元素的类名 |
内容属性
| 属性 | 说明 |
|---|---|
children | 链接文字 |