首页 > 解决方案 > 如何在 Alert.alert 中使用 foreach 进行本机反应

问题描述

function openmodal(modalarray) {
  return Alert.alert(
    "Alert Title",
    "My Alert Msg",
    [
      modalarray.forEach(element => {
        "{text: element, onPress: () => console.log('button press)},";
      })
    ],
    { cancelable: false }
  );
}

标签: javascriptreactjsfor-loopreact-nativealert

解决方案


请使用.map函数而不是.forEach. .forEach不返回任何值,因此您只是传入undefined数组。

考虑以下示例

function openmodal(modalarray) {
  return Alert.alert(
    "Alert Title",
    "My Alert Msg",
    [
      ...modalarray.map(element =>
        ({text: element, onPress: () => console.log('button press')}))
    ],
    { cancelable: false }
  );
}

希望这会有所帮助!


推荐阅读