gpt4 book ai didi

javascript - 我该如何做顶级等待

转载 作者:行者123 更新时间:2023-12-05 00:39:20 26 4
gpt4 key购买 nike

我正在尝试构建一个 react 应用程序并想调用这样的函数:

if (typeof window !== 'undefined') { var token = (await getItem('secure_token')); }
if (typeof window !== 'undefined') { var user_id = (await getItem('user_id')); }
我收到以下错误:
Module parse failed: The top-level-await experiment is not enabled (set experiments.topLevelAwait: true to enabled it)
我怎样才能做到这一点。因为没有等待,我得到 [object Promise]而不是实际值(value)。
下面是完整的代码:
import axios from "axios";
import { getStorage } from "../../components/Helper";
const API_URL = "http://127.0.0.1:8000/api";
const BASE_API = "http://127.0.0.1:8000";
var token = null;
var user_id = null;
if (typeof window !== 'undefined') { var token = (await getItem('secure_token')); }
if (typeof window !== 'undefined') { var user_id = (await getItem('user_id')); }
export const API_ROUTE = axios.create({
baseURL: API_URL,
withCredentials: true,
crossdomain: true,
headers: {
"Key": token,
"Id": user_id
}
});

export const csrf_token = async () => {
await axios.get(BASE_API + '/sanctum/csrf-cookie');
}

async function getItem(item) {
var data = await getStorage(item);
return data;
}

最佳答案

目前 React 中没有顶级等待支持,据我所知,只有 Deno 支持顶级等待。因此,要解决您的问题,您所能做的就是使用 IIFE,即立即调用的函数表达式,以下列方式解决您的问题:

var token, user_id;
(async () => {
If (typeof window !== 'undefined') { token = (await getItem('secure_token')); }
if (typeof window !== 'undefined') { user_id = (await getItem('user_id')); }
})()

关于javascript - 我该如何做顶级等待,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68326044/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com