【发布时间】:2018-08-08 23:35:42
【问题描述】:
amber.send(avatarimage).then(sent => {
let image = sent.attachments.first().url;
});
基本上我正在尝试使用sent.attachments.first().url 而不是控制台记录它,我对此并不熟悉,并且执行amber.send(avatarimage).then(sent => let image = (sent.attachments.first().url)); 之类的操作当然不起作用,我如何获取值而不是记录它?
【问题讨论】:
-
您好,欢迎来到 stackoverflow。 “获得价值”是什么意思。那个时候价值已经存在了。你可能只是对 Promises 和异步编程感到困惑。如果您能提供更多有用的上下文或代码,谢谢。
-
@AlenGenzić 基本上我想将
sent.attachments.first().url存储在一个变量中,但我现在知道在什么地方以及如何做到这一点 -
视情况而定。如果你想使用
sent.attachments.first().url,你必须在它存在的同一个范围内使用它,也就是在 then 回调中。 -
@AlenGenzić 我已经编辑了代码,现在我正在尝试在.then 之外使用
image,我该怎么做? -
您能否将此解释添加到问题中?谢谢。您不能在 then 之外使用 image 变量,因为它在此范围之前或之后都不存在。在
let image = sent.attachments.first().url;之后,您必须立即对图像变量执行所有操作