# XyLink 迁移说明

`XyLink` / `xy-link` 已在 `0.0.1` 中移除。它同时封装 Vue Router、原生链接和按钮外观，导致路由所有权、可访问语义与视觉职责不清晰，因此不再保留统一替代组件。

## 迁移映射

| 旧用法                                                   | 新用法                                                          |
| -------------------------------------------------------- | --------------------------------------------------------------- |
| `to`                                                     | 直接使用应用的 `RouterLink`，继续由路由层处理 active 状态和导航 |
| `href`、`target`、`rel`                                  | 使用原生 `<a>`，保留浏览器链接语义                              |
| `variant="button"` / `variant="primary"`                 | 使用 `XyButton` 的 `href`、`target` 与对应按钮类型              |
| `variant="plain"` / `variant="nav"` / `variant="subtle"` | 使用原生链接，并由业务样式或导航组件表达视觉层级                |
| `block`                                                  | 在业务布局中设置宽度，不再由链接组件隐式控制                    |

## 示例

```vue
<script setup lang="ts">
import { RouterLink } from "vue-router";
</script>

<template>
  <RouterLink to="/settings">设置</RouterLink>
  <a href="https://example.com" target="_blank" rel="noreferrer">外部文档</a>
  <xy-button type="primary" href="/reports">查看报表</xy-button>
</template>
```

AI 工具可以随时运行 `xycomponents migrate link --json` 获取同一份机器可读迁移状态和本指南路径。
