React에서 드롭다운 옵션 채우기
12538 단어 reacttutorialjavascript
이 게시물에서는 배열의 데이터를 기반으로 드롭다운 옵션을 만들고 동적으로 채우는 방법에 대한 간단한 시나리오를 살펴봅니다. 이 게시물은 React가 어떻게 작동하는지에 대한 일반적인 아이디어와 관련 지식이 있다고 가정합니다.
그 상황
하드 코딩된 값이든 API와 같은 외부 소스에서 가져온 값이든 어떤 유형의 데이터를 포함하는 배열이 있습니다.
목표
그 과일 배열의 각 값을 드롭다운 메뉴 내에서 옵션으로 바꾸고 싶습니다. 그런 다음 드롭다운 위에 선택한 옵션을 표시합니다.
스타터 코드
다음과 같은 간단한 React 앱/구성 요소가 있습니다.
import React, {useState} from 'react';
import './App.css';
function App() {
// Array of objects containing our fruit data
let fruits = [
{ label: "Apple", value: "🍎" },
{ label: "Banana", value: "🍌" },
{ label: "Orange", value: "🍊" }
]
// Using state to keep track of what the selected fruit is
let [fruit, setFruit] = useState("⬇️ Select a fruit ⬇️")
// Using this function to update the state of fruit
// whenever a new option is selected from the dropdown
let handleFruitChange = (e) => {
setFruit(e.target.value)
}
return (
<div className="App">
{/* Displaying the value of fruit */}
{fruit}
<br />
{/* Creating our dropdown and passing it the handleFruitChange
so that every time a new choice is selected, our fruit state
updates and renders an emoji of the fruit.
*/}
<select onChange={handleFruitChange}>
{/* Creating the default / starting option for our
dropdown.
*/}
<option value="⬇️ Select a fruit ⬇️"> -- Select a fruit -- </option>
</select>
</div>
);
}
export default App;
드롭다운 채우기
이제 앱의 기본 레이아웃과 드롭다운의 맨 처음이 있으므로 과일 배열의 각 개체를 살펴보고 해당 값/레이블과 함께 해당 개체에 대한 옵션 요소를 만들어야 합니다.
import React, {useState} from 'react';
import './App.css';
function App() {
// Array of objects containing our fruit data
let fruits = [
{ label: "Apple", value: "🍎" },
{ label: "Banana", value: "🍌" },
{ label: "Orange", value: "🍊" }
]
// Using state to keep track of what the selected fruit is
let [fruit, setFruit] = useState("⬇️ Select a fruit ⬇️")
// Using this function to update the state of fruit
// whenever a new option is selected from the dropdown
let handleFruitChange = (e) => {
setFruit(e.target.value)
}
return (
<div className="App">
{/* Displaying the value of fruit */}
{fruit}
<br />
<select onChange={handleFruitChange}>
<option value="⬇️ Select a fruit ⬇️"> -- Select a fruit -- </option>
{/* Mapping through each fruit object in our fruits array
and returning an option element with the appropriate attributes / values.
*/}
{fruits.map((fruit) => <option value={fruit.value}>{fruit.label}</option>)}
</select>
</div>
);
}
export default App;
이제 드롭다운에는 과일 배열의 각 과일에 대한 옵션이 포함됩니다. 하나를 선택하면 드롭다운 위에 표시됩니다.
참고: 이 코드는 옵션에 키를 제공하지 않았기 때문에 콘솔에 경고를 표시합니다( which React wants for list items ). 경고를 없애려면 다음과 같이 코드를 업데이트하면 됩니다.
{fruits.map((fruit) => <option key={fruit.label} value={fruit.value}>{fruit.label}</option>)}
그리고 그거야! 이것의 라이브 데모를 보고 코드를 직접 탐색할 수 있습니다on this Replit.
질문, 제안 또는 인사가 필요하면 여기 또는 내 소셜에 자유롭게 연락하세요 👋
Reference
이 문제에 관하여(React에서 드롭다운 옵션 채우기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/antdp425/populate-dropdown-options-in-react-1nk0텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)