React-native - Alert.alert,无法识别的选择器发送到实例

时间:2018-05-14 09:35:56

标签: javascript reactjs react-native

由于未知原因,我的Alert.alert拒绝工作。我基本上重用了之前工作的代码。得到错误:

  

异常NSArrayl长度;无法识别的选择器发送到实例   在targer上调用alertWithArgs时抛出了0x170623440   Alertmanager with params。

由于

acceptFriendRequest(friendsName){
    Alert.alert(
      friendsName + ' wants to add you',
      [
        {text: 'Decline', onPress: () => console.log('Cancel Pressed'), style: 'cancel',
      },
      {text: 'Accept', onPress: () =>  this.confirmFriendRequest(this), style: 'accept'},

    ],
    )
  }

1 个答案:

答案 0 :(得分:0)

您需要传递第二个参数(the alert body message),如果您不需要正文消息,可以使用undefined / null

Alert.alert(`${friendsName} wants to add you`, undefined, [
  {
    text: 'Decline',
    onPress: () => console.log('Cancel Pressed'),
    style: 'cancel',
  },
  { text: 'Accept', onPress: () => this.confirmFriendRequest() },
]);

您可能需要完全关闭应用并在应用bug in RN后的更改后重新启动它。

另请注意:

  • style: 'accept'无效,将被忽略。
  • 您不需要将this作为参数传递给this.confirmFriendRequest()