Javascript:如何导入和导出异步函数?

问题描述 投票:0回答:1

我正在使用 NWS(国家气象服务)API、Google JavaScript Library API、Google Places API 和 Google Geocoding API 仅使用前端(HTML、CSS 和 JavaScript)创建天气应用程序。我创建了两个异步函数

getCoordinates(region)
getWeatherData(latitude, longitude)

整个程序无需导入和导出即可运行。但是,当我尝试导入和导出函数时,它不起作用。我收到一条错误消息

未捕获(承诺中)InvalidValueError...

使用 Google JavaScript API 库,我将其加载到 /html 文件中,并在 URL 中使用

loading=async
。不过,没有导入和导出我没有问题。

在.html文件中,我从

更改为
<script type="type/javascript" src="index.js"></script>

<script type="module" src="index.js"></script>

我没有更改作为异步延迟 .js 文件加载的 Google JavaScript URL,作为正文标记完成之前的最后一行。

index.js 中导入:

import getCoordinates from './location.js';
import { getWeatherData } from './weather.js';

location.js 中导出:

export default async function getDefault(region) { //code here }

weather.js

中导出
export async function getWeatherData(latitude, longitude) { //code here }
javascript asynchronous import export javascript-import
1个回答
0
投票

首先将简单函数设为箭头函数

export const getDefault = async (region) => {
// Your code here

} 和

export const getWeatherData = async (latitude, longitude) => {
// Your code here

}

如果 getDefault 和 getWeatherData 不是各自文件的默认导出,则在导入它们时应使用花括号。

import { getDefault } from "your file path";
import { getWeatherData } from "your file path";

但是,如果这些函数是默认导出,则您将在不使用大括号的情况下导入它们:

import getDefault from "your file path";
import getWeatherData from "your file path";

希望这对您有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.