1.1.3 • Published 1 year ago

react-native-thiering v1.1.3

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago
NPM WEEKLY DOWNLOADSGITHUB STARNPM LIFETIME DOWNLOADS

👉🏻 Dropdown

🔍 Preview

imageimage
imageimage

💾 Installation

npm i react-native-thiering

✍ Usage

💻 Code

Let's build the preview! (You can find the full code below)

Import the Dropdown:

import { Dropdown } from "react-native-thiering";

Initialize state for selected item:

const [selected, setSelected] = useState({
    label: "Germany",
    value: "germany",
});

Initialize list for dropdown:

const list = [
  {
    label: "Germany",
    value: "germany",
  },
  {
    label: "Italy",
    value: "italy",
  },
  {
    label: "France",
    value: "france",
  },
];

Use Dropdown element:

<Dropdown
  list={list}
  defaultValue={selected.value}
  onChange={setSelected}
/>

Make it ✨your✨ dropdown:

 <Dropdown
   list={list}
   defaultValue={selected.value}
   onChange={setSelected}
   placeholder="Select country"
   containerStyle={{ width: 300 }}
 />

Here is the full code for the preview:

import React, { useState } from "react";
import { StyleSheet, View, Text } from "react-native";
import { Dropdown } from "react-native-thiering";

export default function App() {
  const [selected, setSelected] = useState({
    label: "Germany",
    value: "germany",
  });

  const list = [
    {
      label: "Germany",
      value: "germany",
    },
    {
      label: "Italy",
      value: "italy",
    },
    {
      label: "France",
      value: "france",
    },
  ];

  return (
    <View style={styles.container}>
      <Text>Selected: {selected.label}</Text>
      
      <Dropdown
        list={list}
        defaultValue={selected.value}
        onChange={setSelected}
        placeholder="Select country"
        containerStyle={{ width: 300 }}
      />
      
    </View>
  );
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: "#fff",
    alignItems: "center",
    justifyContent: "center",
  },
});

📋 Types

NameValueDescription
DropdownItem{label: string; value: string;}Dropdown item type

🎯 Properties

PropertyTypeDefaultDescription
listDropdownItem[][]List that will be displayed in dropdown
defaultValuestring-Initial value of dropdown
openbooleanfalseInitial state of dropdown (opened/closed)
onChange(item: DropdownItem) => void-Fires when new value is selected
onChangeText(text: string) => void-Fires when search input changes
placeholderstring"Search..."Placeholder of search input
placeholderTextColorstring"#888"Placeholder text color
iconLeftJSX.Element<Icon name="search-outline" size={18} color={"#888"} />Icon left of search input
iconRightCloseJSX.Element<Icon name="chevron-up" size={18} color={"#888"} />Icon right of search input when dropdown is open
iconRightJSX.Element<Icon name="chevron-down" size={18} color={"#888"} />Icon right of search input when dropdown is closed

🪄 Style

PropertyTypeDefaultDescription
containerStyleViewStyle-Style of view container
searchBarStyleViewStyle-Style of TouchableOpacity
textInputStyleTextStyle-Style of search input
dropdownStyleViewStyle-Style of dropdown
dropdownItemStyleViewStyle-Style of dropdown item