How to Set a Default Value for Select in React
Updated 2 weeks ago
admin
Javascript
/
React
In today's lesson, we are going to see how to set the default value for the select box in React.
Let's assume that we have a list of categories and we want to display a default value like 'choose a category' for the visitor.
Set the default value for the select box in React
You can do that using the code below:
import React, { useEffect, useState } from "react";
import useCategories from "../../custom/useCategories";
export default function Create() {
const [category_id, setCategoryId] = useState("");
const [categories, setCategories] = useState([]);
useEffect(() => {
fetchCategories()
}, []);
const fetchCategories = async () => {
const fetchedCategories = await useCategories();
setCategories(fetchedCategories);
}
return (
<div className="row my-5">
<div className="col-md-6 mx-auto">
<div className="card">
<div className="card-body">
<form className="mt-5">
<div className="mb-3">
<label htmlFor="category_id" className="form-label">Category*</label>
<select
name="category_id"
onChange={(e) => setCategoryId(e.target.value)}
value={category_id}
className="form-select">
<option value="" disabled>Choose a category</option>
{
categories?.map(category => (
<option key={category.id} value={category.id}>{category.name}</option>
))
}
</select>
</div>
</form>
</div>
</div>
</div>
</div>
)
}