Code前端首页关于Code前端联系我们

vue router link button怎么用?从基础到进阶带你吃透路由跳转按钮

terry 4天前 阅读数 29 #Vue

做Vue项目时,不少同学会碰到这样的需求:想要个按钮样式的导航,点一下能跳转路由,还得有路由激活时的高亮、权限控制这些功能,这时候就得把router-link和button的用法结合起来玩出花样,今天就从基础用法到进阶场景,把vue router link button怎么用掰碎了讲,解决你写路由按钮时的疑惑~

先搞懂「为什么要结合router-link和button」?

很多同学会疑惑:router-link本身能导航,button是交互组件,为啥要结合?其实项目里常见这两种情况:

第一种是视觉需求——产品想要按钮样式的导航,比如带圆角、渐变、hover动效的按钮,纯router-link默认渲染成<a>标签,改样式得写一堆CSS重置,不如直接用button标签方便;

第二种是交互需求——跳转前要做逻辑,比如点按钮先弹确认框、检查表单是否填完、请求权限接口,这时候button的@click事件更灵活,能在跳转前塞各种逻辑,再结合路由跳转方法。

简单说,router-link负责「路由层面的导航」(比如管理历史记录、自动高亮激活状态),button负责「UI层面的交互和样式」,只有结合起来,才能满足“按钮外观 + 路由功能 + 复杂逻辑”的需求~

基础用法:两种思路实现按钮式路由跳转

先讲最基础的两种方式,新手能直接抄作业,老手也能查漏补缺~

思路1:让router-link“变成”button(声明式导航)

Vue2和Vue3里实现方式不太一样,得分开说:

  • Vue2版本:用tag属性指定渲染标签
    Vue2中,router-link有个tag属性,能指定最终渲染成什么HTML标签,想要按钮样式,直接把tag设为button
    <router-link 
    tag="button" 
    to="/user" 
    class="btn-primary"
    >去用户列表</router-link>
``` 这样渲染出来的就是`

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门