nuxt 组件中axios请求接口返回结果错误问题

多次测试结论,是层级太深的组件中mounted请求失效;应避免深层级组件中使用mounted方法

  async mounted() {
    let self = this
    // 获取左侧推荐二级分类菜单             
    await axios.get('/rest/getCommondProductType').then((res) => {
      console.log(res.data)
    }).catch((error) => {
      console.log(error)
    })
  }

1、当声明在components/index/recommend/Rnav.vue中时,多次刷新界面,响应结果总是另一接口响应内容;

2、在nextServiceInit与pages中时,响应结果为该接口结果,正确

怀疑是缓存造成,全局增加axios请求时间戳
3、给请求添加时间戳,多次刷新界面,响应结果经常为另一接口结果,偶尔响应null

{"resultCode":"SUCCESS","result":null,"message":null,"date":"2020-05-16 12:52:01"}

4、当去掉另一接口请求组件模块时,多次刷新界面,经常响应null,偶尔正确

5、在button点击事件中请求该接口,多次点击一直响应正确

猜测组件层级太深影响,往上提一层
6、当声明在components/index/index.vue中时,多次刷新界面,响应结果经常正确,偶尔为null;

7、再提升一层components/Test.vue,多次刷新界面,响应皆正常

发表评论

电子邮件地址不会被公开。 必填项已用*标注