Dropdown in React Native: met en zonder library

Gids voor dropdowns in React Native

Dropdown in React Native: zelf bouwen met Modal + FlatList | We.Inc

Bouw een dropdown in React Native zonder library met Modal en FlatList, of gebruik de community-Picker. Code om te kopiëren, een live webpreview en een propstabel.

React Native heeft geen dropdown of select in de lijst met kerncomponenten. U bouwt er zelf een met een Pressable als trigger, een Modal en een FlatList met opties, of u installeert het community-pakket @react-native-picker/picker, dat de native picker op Android en iOS omhult. Bouw zelf als u zoeken, eigen rijen of één uiterlijk op elk platform nodig hebt.

Drie manieren om een lijst met keuzes te tonen

De preview hieronder gebruikt dezelfde logica als de React Native-code verderop, getekend met webelementen zodat u het hier kunt proberen: open de lijst, filter, kies een rij en sluit met Escape. Kopieer daarna de component en vervang de webtags door View, Text, Pressable, Modal en FlatList.

Veelgestelde vragen

Heeft React Native een ingebouwde dropdown?

Nee. De pagina met kerncomponenten noemt Button en Switch onder de interface-elementen, en niets voor selects. Installeer het community-pakket @react-native-picker/picker voor een kant-en-klare native select.

Hoe laat ik de Picker op Android op een dropdown lijken?

Zet mode="dropdown" op de Picker. Die prop werkt alleen op Android; de standaard daar is "dialog", die een modale lijst opent. Op iOS toont de component in plaats daarvan het native draaiwiel.

Waarom sluit een tik op een optie alleen het toetsenbord?

Een scrollende lijst heeft keyboardShouldPersistTaps standaard op "never", dus de eerste tik buiten het actieve invoerveld sluit het toetsenbord en de rij ontvangt de tik nooit. Zet de prop op de FlatList op "handled".

Kan ik zoeken toevoegen aan een dropdown in React Native?

Ja, met de eigen bouw. Bewaar een zoekstring in state, zet een TextInput bovenaan de Modal en geef de gefilterde array door aan de data-prop van de FlatList.

Wanneer u zelf bouwt

Toegankelijkheid van een eigen select

Props die ertoe doen voor een dropdown

Kernprops die de eigen dropdown gebruikt

Dropdown-code om te kopiëren

Dropdown met Pressable, Modal en FlatList

Geen dependencies. De parent beheert de waarde; de component meldt alleen de keuze via onChange.

De community-Picker

Installeer met npm install @react-native-picker/picker. onValueChange krijgt de waarde van het item en de positie ervan.

Preview van de dropdown

Webversie van de React Native-component: dezelfde logica voor openen, filteren en kiezen, getekend met HTML zodat hij hier draait.

Stad

Kies...

Steden filteren

Geen stad past bij dat filter.

Lijst sluiten

Gekozen waarde: {v}

Nog niets gekozen.

Gratis beginnen · Geen creditcard nodig

Gerelateerd: Gidsen

Product

Voor wie

Functies

Bronnen

Bedrijf

Sitemap