【问题标题】:vue.js how to call multiple url data in single axiosvue.js如何在单个axios中调用多个url数据
【发布时间】:2021-01-31 20:52:33
【问题描述】:

我正在尝试在单个 axios 中获取多个 url 数据。我已经添加了单个 url,但我想添加另一个 url。

我厌倦了这个,但它给出了空对象错误

{{ 业务计数 }}

{{ 用户数 }}

从“axios”导入axios; 导出默认 { 数据() { 返回 { 商家列表:[], 用户列表:[], }; }, 异步异步数据({ $axios }){ 让 { 数据 } = 等待 $axios.$get("/Userslist"); 返回 { 用户列表:数据, }; }, 计算:{ 用户计数(){ 返回 Object.keys(this.Userslist).length; }, }, 异步异步数据({ $axios }){ 让 { 数据 } = 等待 $axios.$get("/Businessregisterlist"); 返回 { 商业清单:数据, }; }, 计算:{ 业务计数(){ 返回 Object.keys(this.businesslists).length; }, }, };

我想这样展示

<p>{{ BusinessCount }}</p> 
<p>{{ UserCount }}</p>

第一个网址

/Businessregisterlist

第二个网址

/Userlist

我的代码

<template>
<p>{{ BusinessCount }}</p>
</template>
<script>
import axios from "axios";
export default {
  data() {
    return {
      BusinessCounts: [],
    };
  },
async asyncData({ $axios }) {
    let { datad } = await $axios.$get("/Businessregisterlist");
   return {
      BusinessCounts: datad,
    };
  },
  computed: {
    BusinessCount() {
      return Object.keys(this.BusinessCounts).length;
    },
  },
};
</script>

【问题讨论】:

  • 您的意思是您要再次调用服务器?为什么不复制第一次调用的行并更改变量名称和 URL?
  • @Maarten Veerman 给出 Object null 错误
  • 在哪里?什么?在哪条线上?
  • @Maarten Veerman 无法将 undefined 或 null 转换为对象 return Object.keys(this.BusinessCounts).length;
  • 但是 thuis 与您关于第二个 URL 的问题有什么关系。请更新您问题中的代码以匹配 2 个 URL 的情况。

标签: laravel vue.js vuejs2 axios nuxt.js


【解决方案1】:

在您尝试过的代码中,您定义了 asyncData 函数 2 次。这是不正确的。但是您可以在单个 asyncData 函数中对服务器进行 2 次调用。

试试:

async asyncData({ $axios }) {
    let { datad } = await $axios.$get("/Businessregisterlist");
    let { dataUsers } = await $axios.$get("/Userslist");
   return {
      Businesslist: datad,
      Userslist: dataUsers
    };
  },
computed: {
    BusinessCount() {
      return Object.keys(this.Businesslist).length;
    },
    UserCount() {
      return Object.keys(this.Userslist).length;
    },
  },

确保在data 部分中正确定义BusinesslistUserslist

【讨论】:

  • vue.runtime.esm.js?2b0e:619 [Vue 警告]:未定义属性或方法“UserCount”
  • 当然还需要添加计算机属性。我已经更新了代码示例。
  • 但它给出了这个错误 无法将未定义或 null 转换为对象以返回 Object.keys(this.Businesslist).length;
猜你喜欢
  • 1970-01-01
  • 2018-03-11
  • 2020-10-13
  • 2017-06-06
  • 2020-03-06
  • 1970-01-01
  • 2019-04-21
  • 2020-04-12
  • 1970-01-01
相关资源
最近更新 更多