Vue.js暑假学习心得三

Vue.js路由视图

Vue.js本身没有路由机制,故需要以插件vue-router实现路由

用npm install vue-router 安装插件 然后在代码中调用vue-router

var Vue=require('vue')
var VueRouter=require('vue-router')
Vue.use(VueRouter)

视图部分

在vue-router中使用<a v-link='{path:'   '}">XXX</a>的v-link属性而不是href属性进行导航,当点入XXX时vue-router会在路由映射中匹配path中的路由规则,如果成功匹配到会将对应路由组件的模板内容渲染到router-view区域中,如果path中的值既不是字符串也不是对象字面量,则会被当做对应组件的数据属性来解析

在vue-router中使用router-view来渲染匹配的组件,router-view是一个Vue组件,特性为通过props传递数据;支持v-transition和

transition-mode;支持v-ref,被渲染的组件会注册到父级组件的this.$对象中;支持slot,router-view中的HTML内容会被插入到相应路由组件模板的slot中。

路由实例

用Webpack模块化开发时可以结合Webpack的代码分割以及Vue组件的resolve来实现

/src/router/index.js为路由模块配置文件

然后需要在入口文件配置引入对应的路由

使用路由参数时,原来的组件实例也会被复用。因为两个路由都渲染同个组件,比起销毁再创建,复用则显得更加高效。不过这也意味着组件的生命周期钩子不会再被调用。复用组件时,想对路由参数的变化作出响应的话,可以简单地 watch (监测变化) $route 对象

在组件中使用 $route 会使之与其对应路由形成高度耦合,从而使组件只能在某些特定的 URL 上使用,限制了其灵活性。这时候可使用props将组件和路由解耦。props可分别为布尔型,对象型和函数型

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值