当前位置: 首页 > article >正文

Vue引入外部异步js函数并接收返回值

 export default 和export :
 myModule.js

//export default 只能出现一次,在引入的时候直接写,不用在花括号里面结构赋值
export default function defaultFunction() {
  console.log('This is the default function');
}

export function anotherFunction() {
  console.log('This is another function');
}

export const myVariable = 'This is myVariable';

// 另一个文件
import defaultFunc, { anotherFunction, myVariable } from './myModule';
defaultFunc(); // 输出:This is the default function
anotherFunction(); // 输出:This is another function
console.log(myVariable); // 输出:This is myVariable
场景:

在Vue项目里面,外部定义一个upload.js文件,在里面执行异步上传的upFile函数。在Fille.vue里面引用并接受函数返回值。

test.js


写法一 async 与 await:
const axios = require('axios');
export async function up(data) {

    let result = await axios({
        method: 'post',
        url: `api接口`,
        data: { eventNam: data },
        headers: {
            token: localStorage.getItem('token')
        }
    })
    return result   需要在外部返回

}


写法二 new Promise:

const axios = require('axios');
export function up(data) {
    return new Promise((resolve) => {
        axios({
            method: 'post',
            url: `https://lendingapi-sit.dowsure.com/lending/event/add`,
            data: { eventNam: data },
            headers: {
                token: localStorage.getItem('token')
            }
        })
            .then(res => {
                resolve(res.data)
            });

    })
}



写法三:

const axios = require('axios');

export async function up(data) {
    let result = ''  //获取函数返回值
    await axios({
        method: 'post',
        url: `https://lendingapi-sit.dowsure.com/lending/event/add`,
        data: { eventNam: data },
        headers: {
            token: localStorage.getItem('token')
        }
    })
        .then(res => {
            result = res.data
        });
    return result //获取函数返回值   需要在外部返回
}
File.vue

<el-button @click="getTest">调用异步函数</el-button>

import { up } from "@/api/test"
async getTest() {
     
          let res = await up(111)

        }

 

 


http://www.kler.cn/a/539633.html

相关文章:

  • 查看二进制程序内的 .interp 段
  • Python应用指南:一个库解决常见的国内坐标系转换需求
  • git rebase 和 git merge的区别
  • C++ STL容器之vector的使用及复现
  • 2025web寒假作业二
  • ECG分析0210
  • mysql中主键索引和联合索引的原理解析
  • 开源堡垒机 JumpServer 社区版实战教程:基于 Ubuntu 22.04 离线安装 JumpServer 社区版 v4.4.1
  • 变化检测论文阅读合集
  • 激活函数篇 01 —— 激活函数在神经网络的作用
  • vue3+vite+ts项目中使用vue-router
  • OnlyOffice文件转换PDF
  • 【豆包Marscode体验官】揭秘MarsCode AI编辑助手:高效智能编辑新纪元之入门指导与最佳实践
  • 使用 OpenGL ES 渲染一个四边形
  • 亚马逊爬虫实战:中国商家信息(电话)爬取
  • 6.Centos7上部署flask+SQLAlchemy+python+达梦数据库
  • JVM 知识总结
  • 物联网软件开发与应用方向应该怎样学习,学习哪些内容,就业方向是怎样?(文末领取整套学习视频,课件)物联网硬件开发与嵌入式系统
  • CNN-day6-经典神经网络AlexNet
  • ubuntu server环境下使用mitmproxy代理
  • Protobuf为何成为高效数据交换的首选?
  • 理邦仪器嵌入式(C/C++开发)开发面试题及参考答案
  • Ubuntu 24.10 安装Deepseek(Ollama+openwebui)
  • CentOS 7配置samba服务设置文件共享
  • 【kafka系列】架构、核心概念
  • DeepSeek + IDEA 辅助编程王炸组合