• 技术文章 >web前端 >js教程

    vue-router响应路由参数的变化的解决方法

    不言不言2019-01-08 11:02:36转载2004
    本篇文章给大家带来的内容是关于vue-router响应路由参数的变化的解决方法,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

    1、提醒一下,当使用路由参数时,例如从 /user/foo 导航到 /user/bar,原来的组件实例会被复用。因为两个路由都渲染同个组件,比起销毁再创建,复用则显得更加高效。不过,这也意味着组件的生命周期钩子不会再被调用。
    仅仅只是路由的参数发生了变化,该路由是默认不做刷新操作的。
    为了解决这个问题
    不想复用的话,就在父组件的router-view上加个key
    <router-view :key="$route.fullPath"></router-view>

    2、就是vue-router IOS白屏的问题,这个真是太坑了
    问题描述:

    进入A页面——>B页面——>ios自带的返回——>白屏出现——>手动点击白屏处——>问题解决

    原因分析:

    在ios机器上使用webview开发Vue项目时候,go history(-1), 无法将body的高度拉掉,使得遮住,触发轻点击,方可消除遮罩

    解决方案实现原理:

    html,body都是100%,#app撑起了父元素的告诉,但是浏览器默认的滚动scroll并不是#app,而是body,某些因素,造成返回history 后,无法复原(ios 的锅),为此,我们将#app 进行了绝对定位,并让它重新成为 scroll 的对象,从而解决问题

    html, body {
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0;
      position: relative;
    }
    #app {
      width: 100%;
      height: 100%;
      background: #fff;
      overflow: scroll;
      -webkit-overflow-scrolling: touch;
      position: absolute;
      left:0;
      top:0;
    }
    
    #app 是父节点,最外层的container。根据具体情况而定

    以上就是vue-router响应路由参数的变化的解决方法的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:segmentfault,如有侵犯,请联系admin@php.cn删除
    专题推荐:html5 javascript
    上一篇:懒加载实现的方法有哪些?(三种方法介绍) 下一篇:JavaScript的数组和字符串中includes方法的使用介绍
    大前端线上培训班

    相关文章推荐

    • 利用vue-router实现二级菜单内容转换• Vue.js路由组件vue-router使用方法详解• Vue-Router实现页面正在加载特效方法示例• vue-router路由参数刷新消失改怎么办?• Vue-router的路由元信息使用详解• vue-router懒加载详解(附代码)• vue-router懒加载解决首次加载速度缓慢步骤详解• 如何实现vue-router中query动态传参• vue-router使用总结(附代码)• vue+vue-router+vuex操作权限

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网