我正在尝试编写一种方法,该方法以递归方式显示 ActionSheetIOS 以选择从数组中包含的值并返回所选值:
async function _rescursiveSelect(data, index) {
if (index < data.length) {
const object = data[index];
if (object.array.length === 1) {
return await _rescursiveSelect(data, index + 1);
}
ActionSheetIOS.showActionSheetWithOptions({
title: 'Choose a value from array: ',
options: object.array,
},
buttonIndex => async function() {
const selectedValue = data[index].array[buttonIndex];
data[index].value = selectedValue;
delete data[index].array;
return await _rescursiveSelect(data, index + 1);
});
} else {
return data;
}
}
不幸的是,当我调用此方法时,它返回undefined
. 我猜这个问题来自异步/等待使用,但我还没有找到它。
有什么建议吗?