【Vue.js】selectタグの初期値を設定する方法(htmlでいうplaceholder)
結論
select
タグ内に、v-model
で初期値となる値が入るように設定してあげる。
v-model="friend_genreIdSelected"
もちろんscript内にも下記のような記述をしてあげる。
<script>
・
・
export default {
data() {
return {
friend_genreIdSelected:'友人',
}
}
}
・
・
</script>
通常の選択肢はoption
をv-for
で回そうと思う。 v-for
でループさせたい選択肢の他に、placeholder(初期値)としたい選択肢をoption
として設定してあげれば良い。
それに、disabeled
をつけてあげれば、表示上はplaceholderのようになっており、選択肢の中からは選べないようになる。
disabled
がなかったら、自分の下記のコードの場合、エラーとなってしまうので、「友人」は選択できないようにするのが望ましかった。
<select
class="rs-genre"
v-model="friend_genreIdSelected"
@change="
changeGenreId(friend_genreIdSelected);
setPage(1);
changeMinPrice(10000);
changeMaxPrice(30000);
"
>
<option disabled>友人</option> ## ここ
<option
v-for="friend_search_card in friend_search_cards"
:key="friend_search_card.id"
:value="friend_search_card.genreId"
>{{ friend_search_card.name }}</option
>
</select>