• 技术文章 >web前端 >前端问答

    vue的导航链接组件是什么

    青灯夜游青灯夜游2022-12-15 12:15:55原创71

    vue的导航链接组件是“router-link”。“<router-link>”组件支持用户在具有路由功能的应用中点击导航,通过to属性指定目标地址,语法为“<router-link to="url">...</router-link>”;默认渲染为带有正确连接的“<a>”标签,可以通过配置tag属性生成别的标签。

    大前端零基础入门到就业:进入学习

    本教程操作环境:windows7系统、vue3版,DELL G3电脑。

    vue的导航链接组件是“router-link”。

    vue 组件router-link介绍

    <router-link>组件支持用户在具有路由功能的应用中点击导航。通过to属性指定目标地址,默认渲染为带有正确连接的<a>标签,可以通过配置tag属性生成别的标签。另外,当目标路由成功激活时,链接元素自动设置一个表示激活的css类名

    router-link在哪?

    1.png

    router-link如何使用

    写路由并且导入组件的详细过程上面的那篇文章里面有,这里只简单介绍一下

    1、你要创建好对应的组件

    2.png

    2、你要将你的组件写好对应的路由地址

    3.png

    3、在 App.vue页面写入对应(链接)

    4.png

    结果展示:

    5.png

    它里面的内容介绍

    <router-link to="/">Home</router-link>

    这里面 to 属性指定要跳转路由的path(地址栏内的地址).

    扩展知识:router-link的属性

    <router-link>组件的属性有:

    to 、replace、 append、 tag、 active-class、 exact 、 event、 exact-active-class

    1、to(必选参数):类型string/location

    表示目标路由的链接,该值可以是一个字符串,也可以是动态绑定的描述目标位置的对象

    如下几种示例

    //下面是字符串的形式
    <router-link to="home">Home</router-link>
    
    //下面几种为动态绑定,v-bind: 可以简写为:
    
    
    <router-link :to="'index'">Home</router-link>
    
    /*但注意这个组件的导出需要有类似下面的代码
    export default {
      name: 'App',
      data(){
        return {
          index:'/'
        }
      }
    }
    */
    
    <router-link :to="{ path: '/home' }">Home</router-link>
    /*
    这个路径就是路由中配置的路径
    */
    <router-link :to="{ name: 'User'}">User</router-link>
    /*
      在路由的配置的时候,添加一个name属性,例如:
     routes: [
        {
          path:'/home',
          name:'User',
          component:home
        }
    ]
    */

    2、tag

    类型: string

    默认值: "a"

    如果想要 <router-link> 渲染成某种标签,例如 <li>。 于是我们使用 tag prop 类指定何种标签,同样它还是会监听点击,触发导航。

          <router-link :to="'index'"
                       tag="li"
                       event="mouseover">Home
          </router-link>

    如果此时我们想要在这个li标签中添加a标签,如下所示,可以不为a标签添加href属性即可哦

            <router-link :to="{name:'Home'}" tag="li">
            <a>Home</a>
            </router-link>

    在这种情况下,<a> 将作为真实的链接 (它会获得正确的 href 的),而 "激活时的CSS类名" 则设置到外层的 <li>。

    3、active-class

    类型: string

    默认值: "router-link-active"

    设置 链接激活时使用的 CSS 类名。默认值可以通过路由的构造选项 linkActiveClass 来全局配置。

    <router-link :to="{path:'/about'}"
                       active-class="activeClass"                  
          >about</router-link>

    默认值通过路由的构造选项 linkActiveClass 来全局配置,如下示例:

    export default new Router({
      mode:'history',
      linkActiveClass:'is-active',
      routes: [
        {
          path:'/about',
          component:about
        }
    ]
    })

    4、exact-active-class

    类型: string

    默认值: "router-link-exact-active"

    配置当链接被精确匹配的时候应该激活的 class。注意默认值也是可以通过路由构造函数选项 linkExactActiveClass 进行全局配置的。

    5、exact

    类型: boolean

    默认值: false

    "是否激活" 默认类名的依据是 inclusive match (全包含匹配)。 举个例子,如果当前的路径是 /a 开头的,那么 <router-link to="/a"> 也会被设置 CSS 类名。

    按照这个规则,每个路由都会激活<router-link to="/">!想要链接使用 "exact 匹配模式",则使用 exact 属性:

            <li><router-link to="/">全局匹配</router-link></li>
            <li><router-link to="/" exact>严格匹配</router-link></li>

    简单点说,第一个的话,如果地址是/aa,或/aa/bb,……都会匹配成功,

    但加上exact,只有当地址是/时被匹配,其他都不会匹配成功

    6、event

    类型: string | Array<string>

    默认值: 'click'

    声明可以用来触发导航的事件。可以是一个字符串。

    <router-link to="/document" event="mouseover">document</router-link>

    如果我们不加event,那么默认情况下是当我们点击document的时候,跳转到相应的页面,但当我们加上event的时候,就可以改变触发导航的事件,比如鼠标移入事件

    7、replace

    类型: boolean

    默认值: false

    设置 replace 属性的话,当点击时,会调用 router.replace() 而不是 router.push(),于是导航后不会留下 history 记录。

    8、append

    类型: boolean

    默认值: false

    设置 append 属性后,则在当前 (相对) 路径前添加基路径

    【相关推荐:vuejs视频教程

    以上就是vue的导航链接组件是什么的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    前端(VUE)零基础到就业课程:点击学习

    清晰的学习路线+老师随时辅导答疑

    自己动手写 PHP MVC 框架:点击学习

    快速了解MVC架构、了解框架底层运行原理

    专题推荐:Vue 组件
    上一篇:移动web开发能用vue吗 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• ❤️‍🔥接口自动化测试不想写代码?• vue中的el是指什么简写• vue中mixin和组件的区别是什么• vue页面渲染是同步还是异步• vue的$refs是什么意思• vue 对象的侦听属性用什么表示• 聊聊对vue内置组件keep-alive的理解
    1/1

    PHP中文网