1.2.5 • Published 4 years ago

react-native-selectme-customized v1.2.5

Weekly downloads
1
License
MIT
Repository
github
Last release
4 years ago

React Native Selectme

Simple DropDown menu for React Native App! Your Select Tag for React Native.

Alternatives :

react-native-chooser : This is an upgraded and simple-to-use API. You can customize it to fullest.

Introduction

React Native Selectme is simple, customizable and easy to use dropdown in React Native. It has been tested on both Android and IOS and works like a charm.

Installation

npm i react-native-selectme --save

Usage

Require it inside your Javascript files. Also supporting components using object-deconstructing. Select Option OptionList.

<OptionList /> Is to be used to append the options. This has to be placed as a last component so that it take the highest Z-Index.

Example

import React, {
  Component,
  AppRegistry,
  Text,
  View,
} from 'react-native';

import DropDown, {
  Select,
  Option,
  OptionList,
} from 'react-native-selectme';

class App extends Component {
  constructor(props) {
    super(props);

    this.state = {
      canada: ''
    };
  }

  _getOptionList() {
    return this.refs['OPTIONLIST'];
  }

  
  _canada(province) {

  this.setState({
      ...this.state,
      canada: province
    });
  }

  render() {
    return (
      <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
          <Select
            width={250}
            ref="SELECT1"
            optionListRef={this._getOptionList.bind(this)}
            defaultValue="Select a Province in Canada ..."
            onSelect={this._canada.bind(this)}>
            <Option value = {{id : "alberta"}}>Alberta</Option>
            <Option>British Columbia</Option>
            <Option>Manitoba</Option>
            <Option>New Brunswick</Option>
            <Option>Newfoundland and Labrador</Option>
            <Option>Northwest Territories</Option>
            <Option>Nova Scotia</Option>
            <Option>Nunavut</Option>
            <Option>Ontario</Option>
            <Option>Prince Edward Island</Option>
            <Option>Quebec</Option>
            <Option>Saskatchewan</Option>
            <Option>Yukon</Option>
          </Select>

          <Text>Selected Canada's province: {this.state.canada}</Text>
          
          <OptionList ref="OPTIONLIST"/>
      </View>
    );
  }
}

AppRegistry.registerComponent('App', () => App);

Configuration

Select:
PropertyTypeDefaultDescription
widthnumber400Width of the selection
onSelectfunction(text, value)nullfunction to be invoked when option is selected
heightnumber50Height of the selection
optionListReffunctionrequiredReference to <OptionList /> to display the selection menu
styleobjectnullCustom styles to be applied if supplied
defaultValuestringfirst optionThe value to be displayed if none of the options are selected.

blur() : close the select by calling blur this.refs.SELECT1.blur();

Option:
PropertyTypeDefaultDescription
valueanynullvalue will be passed on callback onSelect as second argument
styleobjectnullStyles to be applied on 'Option' component
styleTextobjectnullStyles to be applied on text inside of 'Option'
OptionList:
PropertyTypeDefaultDescription
overlayStylesobjectnullStyles to be applied on 'overlay' backdrop

Demo

IOS and Android:

Contributions

Your contributions and suggestions are heartily♡ welcome. (✿◠‿◠)