Фиксированные параметры в поле поиска в ReactJS

Опубликовано: 7 Августа, 2021

Фиксированные параметры означают размещение определенных нами параметров в поле поиска в ReactJS. Фиксированные параметры нельзя изменить в строке поиска. В Material UI для React этот компонент доступен нам, и его очень легко интегрировать. Мы можем поместить фиксированные параметры в поле поиска в ReactJS, используя следующий подход.

Создание приложения React и установка модуля:

Шаг 1. Создайте приложение React, используя следующую команду:

 npx создать-реагировать-приложение имя папки

Шаг 2: После создания папки проекта, т.е. имени папки , перейдите в нее с помощью следующей команды:

 cd имя папки

Шаг 3: После создания приложения ReactJS установите модули material-ui, используя следующую команду:

npm install @ material-ui / core
npm install @ material-ui / lab

Структура проекта: это будет выглядеть следующим образом.

Структура проекта

App.js: теперь запишите следующий код в файл App.js. Здесь App - это наш компонент по умолчанию, в котором мы написали наш код.

Javascript




import React from 'react'
import TextField from '@material-ui/core/TextField' ;
import Chip from '@material-ui/core/Chip' ;
import Autocomplete from '@material-ui/lab/Autocomplete' ;
const App = () => {
// Fixed Options to show
const fixedOption = [ 'Gourav' ]
// Sample options for search box
const myOptions = [
'Gourav' , 'Niharika' , 'kartik' ,
'Madhuri' , 'Karishma' , 'Dinesh'
];
const [value, setValue] = React.useState(fixedOption);
return (
<div style={{ marginLeft: '40%' , marginTop: '60px' }}>
<h3>Greetings from GeeksforGeeks!</h3>
<Autocomplete
multiple
id= "fixed-tags-demo"
value={value}
onChange={(event, newValue) => {
setValue([
...fixedOption,
...newValue.filter((option) => fixedOption.indexOf(option) === -1),
]);
}}
options={myOptions}
getOptionLabel={(option) => option}
renderTags={(tagValue, getTagProps) =>
tagValue.map((option, index) => (
<Chip
label={option}
{...getTagProps({ index })}
disabled={fixedOption.indexOf(option) !== -1}
/>
))
}
style={{ width: 450 }}
renderInput={(params) => (
<TextField {...params}
label= "Fixed Option Demo"
variant= "outlined"
placeholder= "Enter Option" />
)}
/>
</div>
);
}
export App default

Шаг для запуска приложения: запустите приложение, используя следующую команду из корневого каталога проекта:

 npm start

Вывод: Теперь откройте браузер и перейдите по адресу http: // localhost: 3000 / , вы увидите следующий вывод:

Как вы теперь можете видеть в приведенном выше поле поиска, наш массив фиксированных параметров уже зафиксирован в строке поиска, поэтому мы можем поместить уже фиксированные теги в ReactJS.