Laravel vue.js如何在单个axios中调用多个url数据

Laravel vue.js如何在单个axios中调用多个url数据,laravel,vue.js,vuejs2,axios,nuxt.js,Laravel,Vue.js,Vuejs2,Axios,Nuxt.js,我正在尝试在单个axios中获取多个url数据。我已经添加了一个url,但我想添加另一个url 我对此感到厌倦,但它给出了空对象错误 {{BusinessCount}} {{UserCount}} 从“axios”导入axios; 导出默认值{ 数据(){ 返回{ 业务列表:[], 用户列表:[], }; }, 异步数据({$axios}){ 让{datas}=wait$axios.$get(“/Userslist”); 返回{ Userslist:datas, }; }, 计算:{ UserC

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

我对此感到厌倦,但它给出了空对象错误

{{BusinessCount}}

{{UserCount}}

从“axios”导入axios; 导出默认值{ 数据(){ 返回{ 业务列表:[], 用户列表:[], }; }, 异步数据({$axios}){ 让{datas}=wait$axios.$get(“/Userslist”); 返回{ Userslist:datas, }; }, 计算:{ UserCount(){ 返回Object.keys(this.Userslist).length; }, }, 异步数据({$axios}){ 让{data}=wait$axios.$get(“/Businessregisterlist”); 返回{ 商业列表:数据, }; }, 计算:{ BusinessCount(){ 返回Object.keys(this.businessList).length; }, }, }; 我想这样表演

<p>{{ BusinessCount }}</p> 
<p>{{ UserCount }}</p>
第二个url

/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>

{{BusinessCount}}

从“axios”导入axios; 导出默认值{ 数据(){ 返回{ 业务计数:[], }; }, 异步数据({$axios}){ 让{datad}=wait$axios.$get(“/Businessregisterlist”); 返回{ 商业计数:数据, }; }, 计算:{ BusinessCount(){ 返回Object.keys(this.BusinessCounts).length; }, }, };
在您尝试过的代码中,您定义了两次asyncData函数。那是不对的。但是您可以在一个asyncData函数中对服务器进行两次调用

尝试:

async异步数据({$axios}){
让{datad}=wait$axios.$get(“/Businessregisterlist”);
让{dataUsers}=wait$axios.$get(“/Userslist”);
返回{
业务列表:datad,
Userslist:dataUsers
};
},
计算:{
BusinessCount(){
返回Object.keys(this.Businesslist).length;
},
UserCount(){
返回Object.keys(this.Userslist).length;
},
},

确保在
数据
部分正确定义了
业务列表
用户列表

您的意思是想再次调用服务器?为什么不在第一次调用时复制该行并更改变量名和URL?@Maarten Veerman其给定对象null errorWhere?什么?在哪一行?@Maarten Veerman无法将未定义或null转换为对象返回object.keys(this.BusinessCounts).length;但是thuis和你关于第二个URL的问题有什么关系呢。请使用2个URL更新问题中的代码。vue.runtime.esm.js?2b0e:619[vue warn]:属性或方法“UserCount”未定义。当然,您还需要添加计算机属性。我已经更新了代码示例。但给出此错误的代码无法将未定义或null转换为返回object.keys(this.Businesslist.length)的object;
<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>