Estoy tratando de agregar un marcador de posición para un elemento seleccionado y lo que veo cuando agrego el atributo selected para la primera opción es solo un espacio vacío.
<select> {#if placeholder} <option value="" disabled selected>{placeholder}</option> {/if} {#each options as option} <option value={option.value}> {option.label || option.text} </option> {/each} </select>El valor inicial seleccionado es diferente a la cadena vacía del marcador de posición, por eso no está seleccionado de forma predeterminada. Asegúrese de vincular el valor de selección a una variable que coincida con el marcador de posición en la inicialización de esta manera:
<script> let placeholder = 'hello world'; let options = [{ label: "Option 1", value: "option1" }, { label: "Option 2", value: "option2" }, { label: "Option 3", value: "option3" }]; let selectedValue = ""; </script> <select bind:value={selectedValue}> {#if placeholder} <option value="" disabled selected>{placeholder}</option> {/if} {#each options as option} <option value={option.value}> {option.label || option.text} </option> {/each} </select>REPL de trabajo: https://svelte.dev/repl/e1c7d9b804414f2d888b96b3e812a5c7?version=3.43.0