Vue + Vue-router 同名路由切换数据不更新的方法

2019-11-16,,,

在默认情况下, 同名路由之间的切换, 由于组件可以服用, 放在ready里获取数据, 是不会执行的, 有两种方法可以解决

注意: 该问题仅存在于 vue1

方法1: 将数据获取放到route.data下~

route: {
  data({to: {params: { page }}}) {
    return Promise.all([
      this.getApi()
    ]).then(() => {

    })
  }
}

方法2: 设置route.canReuse = false, 强制组件不复用~

route: {
  canReuse() {
    return false
  }
},
ready() {
  var request = $.ajax({
    type: "POST",
    dataType: 'json',
    url: "api.php"
  });
  request.then((json) => {
    // balabala
  });
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持北冥有鱼。

您可能感兴趣的文章:

  • vue中使用vue-router切换页面时滚动条自动滚动到顶部的方法
  • vue-router实现webApp切换页面动画效果代码
  • Vue-router 切换组件页面时进入进出动画方法
  • 详解使用vue-router进行页面切换时滚动条位置与滚动监听事件
  • 使用vue-router与v-if实现tab切换遇到的问题及解决方法
  • 解决vue-router在同一个路由下切换,取不到变化的路由参数问题
  • Vue-router结合transition实现app前进后退动画切换效果的实例
  • 使用vue-router切换页面时,获取上一页url以及当前页面url的方法

《Vue + Vue-router 同名路由切换数据不更新的方法.doc》

下载本文的Word格式文档,以方便收藏与打印。