Nuxt的路由配置和参数传递

2018-07-06  本文已影响0人  简单的源代码

Nuxt.js的路由并不复杂,它给我们进行了封装,让我们节省了很多配置环节。

如果想查看路由的配置,可以到 .nuxt 文件中可以看到详细配置

第一种:   

 /意思是跳到pages文件下的index页(页面在最外层)          /about  意思是跳到about文件夹下的index页   

< a href="/" >home</a>     

< a href="/about" > about </a>

< a href="/zx" >  zx </a>

第二种:

nuxt-link        name的值对应文件中的index页面

<nuxt-link :to="{name='index'}">home</nuxt-link>

<nuxt-link :to="{name='about'}">about</nuxt-link>

参数传递

<nuxt-link :to="{name='about',params={newsId:1002}}"></nuxt-link>

接收参数

{{$route.params.newsId}}

路由的高级使用

1.     to                      name是指向对应文件夹的index页,而path功能更全,更好玩,(写动态路由更方便,传参都一样)

<nuxt-link :to="{name='about'}">about</nuxt-link>    

等于

<nuxt-link :to="{path='/about'}">about</nuxt-link>

<nuxt-link :to="{path='/about',params={id:123}}">about</nuxt-link>

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

<nuxt-link :to="{path='/about'}"  replace>about</nuxt-link>

3.append               变成当前 (相对) 路径       我们从 /a 导航到一个相对路径 b,如果没有配置 append,则路径为 /b,如果配了,则为 /a/b

<nuxt-link :to="{path='123'}"  append>zx-1</nuxt-link>

<nuxt-link :to="{path='/zx/123'}"> zx-1 </nuxt-link>

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

<nuxt-link :to = "{path='foo'}"  tag='li'>foo</nuxt-link>

<li>foo</li>

nuxt-link   和  router-link 存在着 异曲同工之处

可查考 Vue router 官方

动态路由的参数校验

在动态路由页面下script -- export default中  写方法  vaildate

export default {

    validate ({params}){                              //路由当参传入

        return /^\d+$/.test(params.newid)      //正则比较

    }

}

上一篇下一篇

猜你喜欢

热点阅读