Generate react-native pickers with range numbers.
Add the package to your project
yarn add react-native-number-please npm install -S react-native-number-please
import React from 'react'; import { View, Text } from 'react-native'; import NumberPlease from 'react-native-number-please'; const OrderPizza = () => { const initialValues = [{ id: 'pizza', value: 3 }]; const [pizzas, setPizzas] = useState(initialValues); const pizzaNumbers = [{ id: 'pizza', label: 'π', min: 0, max: 99 }]; return ( <View> <Text>I would like</Text> <NumberPlease pickers={pizzaNumbers} values={pizzas} onChange={(values) => setPizzas(values)} /> </View> ); };
import React from 'react'; import { View, Text } from 'react-native'; import NumberPlease from 'react-native-number-please'; const ItsYourBirthday = () => { const initialBirthday = { day: 16, year: 1970, month: 4 }; const [birthday, setBirtday] = React.useState(initialBirthday); const { day, month, year } = birthday; const date = [ { id: 'day', label: '', min: 0, max: 31 }, { id: 'month', label: '', min: 0, max: 12 }, { id: 'year', label: '', min: 1900, max: new Date().getFullYear() }, ]; const calculateAge = () => { const ageDifMs = Date.now() - new Date(year, month, day).getTime(); const ageDate = new Date(ageDifMs); return Math.abs(ageDate.getUTCFullYear() - 1970); }; return ( <View style={styles.container}> <Text>When is your birthday?</Text> <NumberPlease pickers={date} values={birthday} onChange={(values) => setBirtday(values)} /> <Text>You're {calculateAge()} years old</Text> </View> ); };
Prop | Required | Description | Default |
---|---|---|---|
pickers | β | Array of objects containing individal picker config | undefined |
values | β | Array of objects initial values for each picker in digits | undefined |
onChange | β | Callback for when an item is selected. | undefined |
pickerStyle | Optional | Picker wrapper style object. | {} |
itemStyle | Optional | Picker item style object. | {} |
This project is licensed under the MIT License - see the LICENSE.md file for details