You can read our article about this package: https://medium.com/digieggs/complete-guide-to-using-country-code-picker-in-your-react-native-projects-daedc55cc4c4
A searchable dropdown component to select a country code for your phone number input.
This component is not supported in the managed workflow for expo for the time being.
npm install @digieggs/rn-country-code-picker
or
yarn add @digieggs/rn-country-code-picker
Also you need to manually install react-native-svg and react-native-localize libraries for the icons in the component
npm install react-native-svg react-native-localize
or
yarn add react-native-svg react-native-localize
As react-native@0.60.0 or above supports autolinking, so there is no need to run linking process. Read more about autolinking here.
CocoaPods on iOS needs this extra step
npx pod-install
No additional step is required.
First of all, import the component.
import { CallingCodePicker } from '@digieggs/rn-country-code-picker';Then use it like this.
const [selectedCallingCode, setSelectedCallingCode] = useState('');
return <CallingCodePicker onValueChange={callingCode => setSelectedCallingCode(callingCode)} />;initialCountryCodeonValueChangetogglerContainerStyletogglerLabelStylelistContainerStylesearchInputStylelistStylepickerItemLabelStylepickerItemContainerStylestyleisFlagVisible
the ISO 3166-1 alpha-2 code (FR, US, CA) of the country that you would like to show initially. If you don't pass a value to this, the country code based on your device locale will be used.
| Type | Required |
|---|---|
| string | no |
Callback for when a country is selected.
callingCode: the calling code of the selected country
| Type | Required |
|---|---|
| function | Yes |
Style to apply to the toggler container.
| Type | Required |
|---|---|
| StyleProp | No |
Style to apply to the picker toggler label.
| Type | Required |
|---|---|
| StyleProp | No |
Style to apply to the list container.
| Type | Required |
|---|---|
| StyleProp | No |
Style to apply to the search input.
| Type | Required |
|---|---|
| StyleProp | No |
Style to apply to the FlatList component.
| Type | Required |
|---|---|
| StyleProp | No |
Style to apply to each of the item labels.
| Type | Required |
|---|---|
| StyleProp | No |
Style to apply to each of the item container.
| Type | Required |
|---|---|
| StyleProp | No |
Style to apply to container.
| Type | Required |
|---|---|
| StyleProp | No |
Visibility of flag component.
| Type | Required |
|---|---|
| boolean | No |
- https://www.countryflags.io/ (for the flags)
- https://restcountries.eu/ (fetched the info in the countries.json from this api)
