React Suite is a popular front-end library with a set of React components that are designed for the middle platform and back-end products. InputPicker component allows the user to use it as a single item selector with text box input. We can use the following approach in ReactJS to use the React Suite InputPicker Component.
InputPicker Props:
- block: It is used to block an entire row.
- classPrefix: It is used to denote the prefix of the component CSS class.
- cleanable: It is used to indicate whether the option can be emptied or not.
- container: It is used to set the rendering container.
- creatable: The settings can create new options.
- data: It is used to denote the selectable data.
- defaultValue: It is used to denote the default value.
- disabled: It is used to indicate whether the component is disabled or not.
- disabledItemValues: It is used to disable optional.
- groupBy: It is used to set the grouping criteria ‘key’ in ‘data’.
- labelKey: It is used to set the options to display the ‘key’ in ‘data’.
- listProps: It is used to denote the list-related properties in react-virtualized.
- maxHeight: It is used to set the max height of the Dropdown.
- menuClassName: It is used to denote a CSS class to apply to the Menu DOM node.
- menuStyle: It is used to denote a style to apply to the Menu DOM node.
- onChange: It is a callback function that is triggered when value changes.
- onClean: It is a callback function that is triggered when value clean.
- onClose: It is a callback function that is triggered on a close event.
- onEnter: It is a callback function that is triggered before the overlay transitions in.
- onEntered: It is a callback function that is triggered after the overlay finishes transitioning in.
- onEntering: It is a callback function that is triggered as the overlay begins to transition in.
- onExit: It is a callback function that is triggered right before the overlay transitions out.
- onExited: It is a callback function that is triggered after the overlay finishes transitioning out.
- onExiting: It is a callback function that is triggered as the overlay begins to transition out.
- onGroupTitleClick: Click the callback function for the group header.
- onOpen: It is a callback function that is triggered on open of the component.
- onSearch: It is a callback function for the search.
- onSelect: It is a callback function that is triggered on the selection of an option.
- placeholder: It is used to denote the placeholder.
- placement: It is used for the placement of component.
- preventOverflow: It is used to prevent floating element overflow.
- renderExtraFooter: It is used for the custom render extra footer.
- renderMenu: It is used for customizing the Rendering Menu list.
- renderMenuGroup: It is used for the custom Render Options Group.
- renderMenuItem: It is used for the custom Render Options.
- renderValue: It is used for the custom Render selected options.
- searchBy: It is used for the custom search rules.
- searchable: It is used to indicate whether you can search for options or not.
- size: It is used to denote the picker size.
- sort: It is used for the sort options.
- toggleComponentClass: It can be used for the custom element for this component.
- value: It is used to denote the value (Controlled).
- valueKey: It is used to set the option value ‘key’ in ‘data’.
- virtualized: It is used to indicate whether using Virtualized List or not.
Creating React Application And Installing Module:
-
Step 1: Create a React application using the following command:
npx create-react-app foldername
-
Step 2: After creating your project folder i.e. foldername, move to it using the following command:
cd foldername
-
Step 3: After creating the ReactJS application, Install the required module using the following command:
npm install rsuite
Project Structure: It will look like the following.
Example: Now write down the following code in the App.js file. Here, App is our default component where we have written our code.
App.js
import React from 'react' import 'rsuite/dist/styles/rsuite-default.css' ; import { InputPicker } from 'rsuite' ; export default function App() { // Sample data const options = [{ "label" : "Monday" , "value" : "Monday" , "role" : "Master" , }, { "label" : "Tuesday" , "value" : "Tuesday" , "role" : "Master" , }, { "label" : "Wednesday" , "value" : "Wednesday" , "role" : "Master" , }, { "label" : "Thursday" , "value" : "Thursday" , "role" : "Master" , }, { "label" : "Friday" , "value" : "Friday" , "role" : "Master" , }, { "label" : "Saturday" , "value" : "Saturday" , "role" : "Master" , }, { "label" : "Sunday" , "value" : "Sunday" , "role" : "Master" , }] return ( <div style={{ display: 'block' , width: 600, paddingLeft: 30 }}> <h4>React Suite InputPicker Component</h4> <InputPicker placeholder= "Enter Weekday" data={options} /> </div> ); } |
Step to Run Application: Run the application using the following command from the root directory of the project:
npm start
Output: Now open your browser and go to http://localhost:3000/, you will see the following output:
Reference: https://rsuitejs.com/components/input-picker/