Vue.js 从外部 js 文件调用异步函数

Posted

技术标签:

【中文标题】Vue.js 从外部 js 文件调用异步函数【英文标题】:Vue.js calling an async function from external js file 【发布时间】:2020-12-19 03:21:55 【问题描述】:

我正在尝试创建一个 .js 文件,其中有几个异步调用。 我设置了文件,但是当我调用我的方法时没有得到任何结果。 从 .js 文件调用这对我来说是全新的,所以不确定我做错了什么。

这是我的inventory.js文件从“axios”导入axios;

let getInventories = async () => 
  const result = await axios
    .get("/inventories")
    .catch((error) => console.log(error));
  // this.inventoryArray = result.data;


export getInventories

这是来自我的 Inventory.vue 文件的调用

import axios from "axios";
import  bus  from "../app";
import getInventories from './inventory';
export default 
  mounted() 
    let temp =  getInventories();
    debugger;
  ,

temp 没有返回任何东西。我从getInventories 中添加了等待,但出现错误

【问题讨论】:

【参考方案1】:

您缺少返回结果:

let getInventories = async () => 
   try
    const result = await axios
    .get("/inventories")
    return result.data;
      catch(error)
   console.log(error);
   return null;
   ;
 


export getInventories

【讨论】:

以上是关于Vue.js 从外部 js 文件调用异步函数的主要内容,如果未能解决你的问题,请参考以下文章

Vue.js 模板循环 - 异步 axios 调用

Vue.js如何检测组件/页面是否已完成所有异步调用?

外部函数调用,承诺,异步和Mongo - 混淆

使用 Vue.js 进行异步/等待 axios 调用

vue.js methods中的方法互相调用时变量的作用域是怎样的

从 vue.js 中的父模板调用函数