Generate option tags for select from array in React
Generate option tags for select from array in React:
-
Use
map()
the method to iterate over an array. - On each iteration, one option element is returned.
- Pass a unique key attribute to each option element.
const App = () => {
const arr = [
{value: '', text: '--Choose an option--'},
{value: 'apple', text: 'Apple 🍏'},
{value: 'banana', text: 'Banana 🍌'},
{value: 'kiwi', text: 'Kiwi 🥝'},
];
const handleChange = event => {
console.log(event.target.value);
};
return (
<div>
<select onChange={handleChange} name="fruits" id="fruit-select">
{arr.map((option, index) => (
<option key={index} value={option.value}>
{option.text}
</option>
))}
</select>
</div>
);
};
export default App;
We use Array.map
the method to iterate over the array and render an option tag for each array element.
The key attribute we pass to each option element is used internally by React. It keeps track of which elements in the array have changed, so React can re-render only the array elements that have changed.
We used map()
the index in the method, but it would be better to use a stable value if available.
value
The attribute is guaranteed to be unique across all option
elements, so we can use it for key
the attribute.
const App = () => {
const arr = [
{value: '', text: '--Choose an option--'},
{value: 'apple', text: 'Apple 🍏'},
{value: 'banana', text: 'Banana 🍌'},
{value: 'kiwi', text: 'Kiwi 🥝'},
];
const handleChange = event => {
console.log(event.target.value);
};
// 👇️ using option.value for key
return (
<div>
<select onChange={handleChange} name="fruits" id="fruit-select">
{arr.map(option => (
<option key={option.value} value={option.value}>
{option.text}
</option>
))}
</select>
</div>
);
};
export default App;
Every time the selected value changes, handleChange
the function is called. We can access the value of the selected option on the event object as event.target.value
.
For reprinting, please send an email to 1244347461@qq.com for approval. After obtaining the author's consent, kindly include the source as a link.
Related Articles
Deep understanding of Nginx's server block selection algorithm
Publish Date:2025/03/17 Views:95 Category:NETWORK
-
Nginx is one of the most popular web servers in the world. It can successfully handle high loads with many concurrent client connections and can be used as a web server, mail server, or reverse proxy server. In this article, we will discuss
How to avoid cross-origin (CORS) issues in React/Next.js
Publish Date:2025/03/17 Views:166 Category:NETWORK
-
In this article, we will introduce how to avoid cross-origin (CORS) issues in React/Next.js. Cross-origin resource sharing (CORS) is a protocol that defines how web requests should be handled when crossing different URLs.
React Tutorial - Transferring Props
Publish Date:2025/03/16 Views:185 Category:React
-
React transfers Props. Props are generated when components are encapsulated. Components expose some properties (Props) to the outside world to complete some functions.
React Tutorial: Props Anti-Pattern
Publish Date:2025/03/16 Views:183 Category:React
-
React's Props anti-pattern, using Props to generate state in getInitialState is an anti-pattern - Anti-Pattern.
React Tutorial - Props Validation
Publish Date:2025/03/16 Views:99 Category:React
-
Props validation is a very useful way to use components correctly. It can avoid many bugs and problems as your application becomes more and more complex. In addition, it can make your program more readable.
React tutorial: Types of Props for child components
Publish Date:2025/03/16 Views:170 Category:React
-
Usually, the child components of a React component are a group, that is, the child components are an array. Introduction to Type of the Children Props.
How to solve the error Uncaught TypeError: Cannot read properties of undefined in
Publish Date:2025/03/16 Views:150 Category:React
-
In the process of React development, we often encounter some errors. Here we look at an error reported in App.js. The error is as follows: App.js:69 Uncaught TypeError: Cannot read properties of undefined (reading 'setState') at onInput
Why do you need to bind event handlers in React Class Components?
Publish Date:2025/03/16 Views:58 Category:React
-
When using React, we must have come across control components and event handlers. We need to use `.bind()` in the constructor of the custom component to bind these methods to the component instance. As shown in the following code:
Solution to the error "does not contain a default export" in React
Publish Date:2025/03/16 Views:187 Category:React
-
When we try to use `default import` to import from a module that does not have a `default export`, we get a "does not contain a default export" error. To fix the error, make sure the module has named exports and wrap the import in curly braces, e.g.