我正在使用AWS Javascript SDK,并且正在遵循有关如何发送SQS消息的教程。我基本上遵循AWS tutorial,其中有一个sendMessage
的示例,如下所示:
sqs.sendMessage(params, function(err, data) {
if (err) {
console.log("Error", err);
} else {
console.log("Success", data.MessageId);
}
});
因此sendMessage
函数使用回调函数来输出操作是否成功。我不想打印到控制台,而是要返回一个变量,但是我设置的每个值仅在回调函数内可见,即使全局变量如window.result
在回调函数外也不可见。有什么办法可以在回调之外返回值?
我目前发现的唯一变通方法是在HTML元素中设置数据属性,但我认为这不是真正的优雅解决方案。
答案 0 :(得分:1)
我建议在ES2016中使用li.checked {
color: red;
}
以及新的<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="module-group">
<div class="module-toggle module-toggle--on" data-id="module-1">
Module 1
</div>
<div class="module-toggle module-toggle--on" data-id="module-2">
Module 2
</div>
<div class="module-toggle module-toggle--on" data-id="module-3">
Module 3
</div>
<div class="module-features">
<ul>
<li class="module-1">Module 1 feature</li>
<li class="module-1">Module 1 feature</li>
<li class="module-1">Module 1 feature</li>
<li class="module-2">Module 2 feature</li>
<li class="module-2">Module 2 feature</li>
<li class="module-2">Module 2 feature</li>
<li class="module-3">Module 3 feature</li>
<li class="module-3">Module 3 feature</li>
<li class="module-3">Module 3 feature</li>
</ul>
</div>
</div>
和Promises
关键字。它使您的代码更易于阅读。
async