Vue router 中 router-link 的 to 怎么绑定对象数组中的属性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue router 中 router-link 的 to 怎么绑定对象数组中的属性相关的知识,希望对你有一定的参考价值。

参考技术A import Vue from 'vue'
import VueRouter from 'vue-router'
import App from './App.vue'
Vue.use(VueRouter)
1.定义组件,这里使用从其他文件import进来
import index from './components/index.vue'
import hello from './components/hello.vue'本回答被提问者采纳
参考技术B

没有度到答案,自己试了下就可以了。

--------------------------------------

只要把to改为:to就可以了

:to='routeto'

data()
  return  routeto='/a/b/c' 

Vue中router-link常用属性-使用案例

在vue1.0版本的超链接标签还是原来的a标签,链接地址由v-link属性控制
而vue2.0版本里超链接标签由a标签被替换成了router-link标签,但最终在页面还是会被渲染成a标签的
至于为什么要把a换成router-link原因还是有的,比如我们之前一直惯用的nav导航里面结构是(ul>li>a),router-link可以渲染为任何元素,这里可以直接渲染成li标签,同样能实现跳转效果,节省了a标签的使用,还有一个原因可能是因为a标签正常是链接的跳转的作用,点击a时可能会重载页面,使用router-link,此标签会被vue所监听,跳转链接时就不会刷新页面了。

router-link属性

:to 属性

相当于a标签中的”herf”属性,后面跟跳转链接所用
<router-link :to="/home">Home</router-link>
<!-- 渲染结果 -->
<a href="/home">Home</a>


replace属性

replace在routre-link标签中添加后,页面切换时不会留下历史记录
<router-link :to="/home" replace></router-link>



tag属性

具有tag属性的router-link会被渲染成相应的标签
<router-link :to="/home" tag="li">Home</router-link>
<!-- 渲染结果 -->
<li>Home</li>

此时页面的li同样会起到a链接跳转的结果,vue会自动为其绑定点击事件,并跳转页面


active-class属性

这个属性是设置激活链接时class属性,也就是当前页面所有与当前地址所匹配的的链接都会被添加class属性
<router-link :to="/home" active-class="u-link--Active">Home</router-link>
active-class属性的默认值是router-link-active,所以如果没有设置,就会被渲染为这个class
可以在router.Js里面设置
const router = new VueRouter(
mode: 'hash',
linkActiveClass: 'u-link--Active', // 这是链接激活时的class
)



exact属性

开启router-link的严格模式
<router-link :to="/" exact>home</router-link>
上面这个标签如果不加exact属性,则会在vue2.leenty.com/article页面下也会被匹配到,
这却不是我们的本意,在加了这个属性后就会正确的匹配到vue2.leenty.com下

以上是关于Vue router 中 router-link 的 to 怎么绑定对象数组中的属性的主要内容,如果未能解决你的问题,请参考以下文章

vue中router-link的click事件失效的解决办法

为啥vue中子路由点击router-link只能刷新一次子页面?

如何利用vue组件 动态生成router-link

在vue中怎么动态变换router-link中to的值

改变Vue默认组件渲染的标签-router-link-默认渲染成a标签

Vue中router-link常用属性-使用案例