Я согласен с тем, что это раздражает, и то, как работают поля выбора, похоже на то, что по умолчанию значение всегда пусто "", и вы хотите, чтобы ваши пользователи выбирали значение.
НО, если бы мне пришлось это сделать это, я думаю, самый чистый способ - использовать React useState
и инкапсулировать компонент.
import React from "react";
import "./styles.css";
import { useState } from "react";
export default function App() {
const [selection, setSelection] = useState("React"); // set default value here
const handleSelection = (e) => {
const selectionValue = e.target.value
console.log(selectionValue);
setSelection(selectionValue); // set current state
};
return (
<div className="App">
{/* show current state in below div */}
<h1>Selected Topic: {selection}</h1>
<select onChange={handleSelection} defaultValue="React">
<option value="React">React</option>
<option value="Vue">Vue</option>
<option value="Angular">Angular</option>
</select>
</div>
);
}