A searchable dropdown component to select a country code with react native
React Native Country Code Picker
A searchable dropdown component to select a country code for your phone number input.
For Managed Workflow users using Expo
This component is not supported in the managed workflow for expo for the time being.
Getting started
npm install @digieggs/rn-country-code-picker --save
or
yarn add @digieggs/rn-country-code-picker
Also you need to manually install react-native-svg
library for the icons in the component
npm install react-native-svg --save
or
yarn add react-native-svg
For react-native@0.60.0 or above
As react-native@0.60.0 or above supports autolinking, so there is no need to run linking process.
Read more about autolinking here.
iOS
CocoaPods on iOS needs this extra step
npx pod-install
Android
No additional step is required.
Usage
First of all, import the component.
import { CallingCodePicker } from 'rn-country-code-picker';
Then use it like this.
const [selectedCallingCode, setSelectedCallingCode] = useState('90'); // Give it a default value to show an initial flag and a code
return (
<CallingCodePicker
selectedValue={selectedCallingCode}
onValueChange={value => setSelectedCallingCode(value)}
/>
);
Reference
Props
selectedValue
Value matching value of one of the items. Can be a string.
Type | Required |
---|---|
string | Yes |
onValueChange
Callback for when an item is selected. This is called with the following parameters:
itemValue
: the value of the item that was selected
Type | Required |
---|---|
function | Yes |
togglerContainerStyle
Style to apply to the toggler container container. (for ex. you can give absolute positioning to align it inside the input.)
Type | Required |
---|---|
StyleProp | No |
togglerLabelStyle
Style to apply to the picker toggler label.
Type | Required |
---|---|
StyleProp | No |
listContainerStyle
Style to apply to the list container.
Type | Required |
---|---|
StyleProp | No |
searchInputStyle
Style to apply to the search input.
Type | Required |
---|---|
StyleProp | No |
listStyle
Style to apply to the FlatList component.
Type | Required |
---|---|
StyleProp | No |
pickerItemLabelStyle
Style to apply to each of the item labels.
Type | Required |
---|---|
StyleProp | No |