我正在尝试控制台记录 .then() 之外的变量 arrItems。有什么建议吗?提前致谢。protected fun(){ sp.web.lists.getByTitle("Requests") .items.get() .then((items: any[]) => { var arrItems = items.map((order) => { var info = { "Id": order.Id, "File": order.FileName } return info; }) console.log(arrItems) // works },); console.log(arrItems) // doesent works}
2 回答
素胚勾勒不出你
TA贡献1827条经验 获得超9个赞
这.get是一个承诺,它是异步解决的。这意味着其他代码将在承诺解决之前执行。
如果你不知道如何工作的,我建议你阅读一些文章/文档像这样。
您可以使用awaites6 标记等待承诺解决,然后控制台记录结果。
来自MDN 的示例
function resolveAfter2Seconds(x) {
return new Promise(resolve => {
setTimeout(() => {
resolve(x);
}, 2000);
});
}
async function f1() {
var x = await resolveAfter2Seconds(10);
console.log(x); // 10
}
f1();
添加回答
举报
0/150
提交
取消