【发布时间】:2018-07-19 14:32:49
【问题描述】:
我在全局范围内有一个数组 (targets),我将其值传递给一个外部函数 [第三方库,externalConverter],它会进行一些文本转换。该数组的值正在传递给convert 函数,并且转换进行得很好。
const targets = [‘box’, ’box1’, ’box2’, ’box3’]
for (var i = 0; i < targets.length; ++i) {
console.log(targets[i]); // this is coming out fine
externalConverter
.convert(data.text, targets[I])
.then(results => {
data.convertedText.push({
[targets[i]]: results[0]
});
//above convertedText array comes out as
//{“undefined: ”, “nice converted text”}, ...
})
}
在 Promise 的结果中,我试图访问 targets 值,但在上面的函数中获取 undefined 值。我不确定为什么目标突然变成undefined
有什么想法吗?
【问题讨论】:
-
什么时候访问目标?在
.then()还是其他地方?