var DVizModule = (() => {
let dataset = [];
let _data = async () => {
const data = await d3.csv("data/alphabet.csv");
return data;
}
let data = _data().then(data => {
dataset = data;
return dataset;
})
return {
data: data
}
})();
console.log(DVizModule.data);
它返回
Promise pending proto: Promise
PromiseStatus: "resolved"
PromiseValue: Array(26)
当我写的时候
const t = async function() {
const data = await d3.csv("data/alphabet.csv");
return data;
}
t().then(result => console.log(result))
它完美地返回文件我正在尝试通过访问文件内容
DVizModule.data
如果希望同步访问data
,则应将其声明为普通值,而不是promise。像这样的东西应该能起到作用:
const DVizModule = {};
d3.csv("data/alphabet.csv").then(data => DVizModule.data = data);
当然,请注意,在请求实际完成之前,dvizmodule.data
将是未定义的
。如果您想要确保值确实存在,您必须将外部上下文包装到async
函数中,并在一开始就等待数据。这样,您既可以确保在代码访问该值时该值是存在的,又可以以同步的方式使用该值。
希望我答对了你的问题,而不是试图解决错误的问题;)
我试图访问的结果(这里是'机构')的抓取,但继续得到这个: promise{ 它说已解决,但不只是给我我想要的数组。 这是我的密码 以上结果来自console.log(Categories)
当我试图访问中的函数时,我出错了。我用猫鼬,快递。 TypeError:无法读取在/private/var/www/html/sms/server/routes/user.routes.js:70:9层未定义的属性“then”。处理[as handle_request](/private/var/www/html/html/sms/node_modules/express/lib/router/l
我正在尝试使用注册功能组件中的useState更新组件的状态。当用户输入无效的电子邮件地址并单击“提交”按钮时,以下代码将返回错误消息 我想用这段代码将错误消息设置为formData。 如何将错误消息设置为formData? 这是我的密码:
我在iOS应用程序中实现了一个导航栏,我将淡色设置为白色,但在运行应用程序时,状态栏不跟随淡色,只是透明的(见图)。我的目标是状态栏有半透明的风格。 怎么解决这个问题?
我正在尝试使用axios接收的数据,使用useState更新组件的状态。问题是“setCursos”不更新“cursos”,它以空数组开始。我试过很多东西,但似乎都不管用。请帮忙。这是a公司迄今为止所做的: 这就是我在express中看到的: aa和我获取数据的json文件:
我对JavaScript和Node.js还是个新手,所以当我的机器人需要它才能正常工作时,被扔进Promissions是相当令人畏惧的。 这基本上是我写出来的,它创建了一个名为'stored userid'的变量,我想稍后更新该变量。我试图更新它的承诺,但它似乎没有工作。 在代码中,有message.reply(“your id is”+userID);它可以按照预期工作。它将打印给一个用户'yo