router-link使用详解

router-link组件的属性

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

属性介绍

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

//字符串
<router-link to="path(路径)">AAAA</router-link>

//对象
<router-link :to="{path:'路径'}">AAAA</router-link>

2、tag:类型string,它的默认值是a标签。
如果想要 渲染成某种标签,例如

  • 。 于是我们使用 tag prop 类指定何种标签,同样它还是会监听点击,触发导航。
  • <router-link to='/' tag="li">跳转</router-link>
    

    这里想举个例子提醒要注意的地方,当我们想给某个标签加上路由时,因为tag默认是a标签,所以路由下的字体颜色会发生改变,如果想要恢复原来的颜色就要加样式了,那有没有其他的方式呢?这时我们就可以用到tag了,我们可以用router-link来代替要加陆游的标签,如下

    <router-link 
           	  class="item border-bottom"
           	  v-for="item of list"
           	  :key="item.id"
           	  :to="'/detail/'+item.id"
           	  tag='li'
           	  >
           			<img class="mp-like-img" :src="item.imgUrl" alt="长沙生态动物园">
           		<div class="item-info">
           			<p class="item-title">{{item.title}}</p>
           			<p class="item-desc">{{item.desc}}</p>
           			<button class="item-button">查看详情</button>
           		</div>
           	</router-link>
    

    这里原来最外层是一个li标签,但是加上路由后p标签字体颜色发生改变,此时我们就可以用路由的tag属性,将路由变为li标签,这就完美的解决这个问题。
    3、active-class 类型: string 默认值: "router-link-active"设置 链接激活时使用的 CSS 类名。默认值可以通过路由的构造选项 linkActiveClass 来全局配置。

     <router-link to='/'
            tag="a"
            active-class="red"
            >AAA
     </router-link>
    

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

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

    4、exact-active-class 类型: string 默认值: "router-link-exact-active"配置当链接被精确匹配的时候应该激活的 class。注意默认值也是可以通过路由构造函数选linkExactActiveClass 进行全局配置的。
    5、exact 类型: boolean 默认值: false按照这个规则,每个路由都会激活!想要链接使用 “exact 匹配模式”,则使用 exact 属性:
    6、replace 类型: boolean 默认值: false
    设置 replace 属性的话,当点击时,会调用 router.replace() 而不是 router.push(),于是导航后不会留下 history 记录。
    7、append 类型: boolean 默认值: false 设置 append 属性后,则在当前 (相对) 路径前添加基路径

  • 10
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue Router 是 Vue.js 的官方路由管理器,它与 Vue.js 紧密集成,可以让我们轻松地构建单页面应用(SPA)。 在使用 Vue Router 构建单页面应用时,我们通常会使用 `<router-view>` 组件来展示当前路由所对应的组件内容。下面是对 `<router-view>` 组件的使用详解: 1. 定义路由: 在 Vue Router 中,我们需要首先定义路由。可以通过在 `routes` 配置项中定义一个数组来实现,每个路由对象都包含了一个路径和对应的组件。例如: ```javascript import Home from './components/Home.vue' import About from './components/About.vue' const routes = [ { path: '/', component: Home }, { path: '/about', component: About } ] ``` 2. 注册路由: 在创建 Vue 实例之前,我们需要将路由配置注册到 Vue 实例中。可以使用 `Vue.use()` 方法来注册 Vue Router 插件。例如: ```javascript import Vue from 'vue' import VueRouter from 'vue-router' Vue.use(VueRouter) ``` 3. 创建路由实例: 在注册完插件后,我们可以创建一个路由实例,并将之前定义的路由配置传入。例如: ```javascript const router = new VueRouter({ routes }) ``` 4. 添加路由占位符: 在应用的根组件中,我们需要添加一个 `<router-view>` 组件作为路由占位符。这样,当路由切换时,对应的组件就会渲染在这个占位符中。例如: ```html <template> <div> <router-view></router-view> </div> </template> ``` 注意,`<router-view>` 组件可以放置在任何位置,根据实际需求进行布局。 5. 挂载路由: 最后一步是将路由实例挂载到 Vue 实例上。例如: ```javascript new Vue({ router }).$mount('#app') ``` 至此,我们就完成了 `<router-view>` 组件的使用。当用户访问不同的路由时,对应的组件就会被渲染到 `<router-view>` 中,实现了页面的切换效果。 需要注意的是,`<router-view>` 组件只能用于展示路由对应的组件内容,并不能直接显示其他内容。如果需要在路由切换时显示一些其他元素,可以结合使用 `<router-link>` 组件来实现。 希望以上解答对你有帮助!如有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值