You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vue Router/iView BreadcrumbItem跳转外部网站异常求助

解决iView BreadcrumbItem外部链接跳转问题

嘿,这个坑我之前踩过!你遇到的问题是因为iView的BreadcrumbItem组件的to属性,默认是和Vue Router的router-link逻辑一致的——它只会处理内部路由路径,不会识别外部URL,所以才会把https://github.com当成路由路径拼到当前页面的URL后面,导致跳转异常。

给你两个简单的解决方案:

方案一:用原生<a>标签嵌套(最简便)

直接把图标放在原生的<a>标签里,嵌套进BreadcrumbItem就行,原生a标签会自动处理外部链接跳转:

<BreadcrumbItem>
  <a href="https://github.com" target="_blank">
    <Icon type="social-github"></Icon>
  </a>
</BreadcrumbItem>

注:target="_blank"是让链接在新窗口打开,如果你想在当前窗口跳转,去掉这个属性就行。

方案二:手动绑定点击事件跳转

如果一定要通过组件的点击逻辑处理,可以给BreadcrumbItem绑定点击事件,手动触发外部跳转:

<BreadcrumbItem @click="navigateToGithub">
  <Icon type="social-github"></Icon>
</BreadcrumbItem>

然后在Vue组件的methods里添加跳转逻辑:

methods: {
  navigateToGithub() {
    // 当前窗口跳转
    window.location.href = 'https://github.com';
    // 或者新窗口打开:window.open('https://github.com', '_blank')
  }
}

推荐用第一种方案,不需要额外写JS逻辑,直接利用原生标签的特性就能解决问题~

内容的提问来源于stack exchange,提问作者nateph

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:50:39