react-native-alert-async
TypeScript icon, indicating that this package has built-in type declarations

1.0.5 • Public • Published

react-native-alert-async

An Alert.alert() that you can await

import AlertAsync from "react-native-alert-async";
 
const myAction = async () => {
 
  const choice = await AlertAsync(
    'Title',
    'Message',
    [
      {text: 'Yes', onPress: () => 'yes'},
      {text: 'No', onPress: () => Promise.resolve('no')},
    ],
    {
      cancelable: true,
      onDismiss: () => 'no',
    },
  );
 
  if (choice === 'yes') {
    await doSomething();
  }
  else {
    await doSomethingElse();
  }
}

It always returns a promise, and that promise is guaranteed to resolve after the user made his choice.

It's just a wrapper around the original RN API so it's very tiny and does not require native code/linking, and is compatible with Expo.

There is an existing RN PR waiting to be merged with this feature. In the meantime you can use this package. I use this in production for a long time and it's reliable.

Hire a freelance expert

Looking for a React/ReactNative freelance expert with more than 5 years production experience? Contact me from my website or with Twitter.

Package Sidebar

Install

npm i react-native-alert-async

Weekly Downloads

1,828

Version

1.0.5

License

MIT

Unpacked Size

4.76 kB

Total Files

6

Last publish

Collaborators

  • slorber