sdgpsaf 2021-12-24 11:54 采纳率: 85.7%
浏览 421
已结题

axios发请求获得的返回值怎么存到data里?

问题相关代码,请勿粘贴截图
import axios from "axios";
export default {
  data() {
    return {
      obj: {},
    };
  },
  created() {
    this.start();
    this.end();
  },
  methods: {
    findList(method, url) {
      return axios({
        method: method,
        url: url,
      });
    },
start() {
      var that = this;
      this.findList("get", "xxxxxxxxx").then(
        function (res) {
          var aaa = JSON.parse(res.data.monitdatas);
          that.obj = aaa;
          console.log(aaa);
        }
      );
    },
    end() {
      console.log(this.obj);
    },
  },
};
运行结果及报错内容

img

上面一行是在end里打印的,下面一行是在start里打印的
在.then()里有返回值能拿到对象,但是在外面打印还是空对象,我想在外面操作这些数据,就必须在.then里面么?
  • 写回答

4条回答 默认 最新

  • 崽崽的谷雨 2021-12-24 12:18
    关注

    你现在写的就没问题 。 因为 接口需要 时间 是异步 的 先 运行了end再 运行的atart 。 如果想 end和start输出一样 。在dtart 运行end.

    function (res) {
              var aaa = JSON.parse(res.data.monitdatas);
              that.obj = aaa;
    this.end();
              console.log(aaa);
            }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 1月2日
  • 已采纳回答 12月25日
  • 创建了问题 12月24日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵