Я вызываю эту функцию для получения пользовательского атрибута, однако, когда я тестирую функцию, возвращаемый результат всегда "test", а затем он проходит через "cognitoUser.getUserAttributes" и регистрирует фактический результат.Я не уверен, почему, но "cognitoUser.getUserAttributes", кажется, изначально пропущен.
есть идеи?
function retrieveattribute(e) {
var ans = "test";
var e = "custom:InstanceID_1";
cognitoUser.getUserAttributes(function(err, result) {
if (err) {
alert(err);
return;
}
for (i = 0; i < result.length; i++) {
if (result[i].getName() == e) {
console.log('attribute ' + result[i].getName() + ' has value ' + result[i].getValue());
ans = result[i].getValue();
console.log(ans);
return ans;
}
}
});
return ans;
}
Прямо сейчас: тест, фактическое значение, фактическое значение,
ожидается: фактическое значение, фактическое значение