Vue的Select是一種非常常見的表單元素,同時也是用于展示大量數(shù)據(jù)的良好選擇。在Vue的Select中,默認選項這一概念有點棘手。本文將詳細介紹Vue Select的默認選項。
默認選項在Vue的Select中的實現(xiàn)方式取決于目標瀏覽器是否支持<option selected>
屬性。在高級瀏覽器中,這個屬性可以選擇一個默認選項。
<select> <option disabled selected value="">請選擇</option> <option v-for="option in options" :value="option.value"> {{ option.text }} </option> </select>
但如果瀏覽器不支持<option selected>
屬性(例如IE9),那么Vue會根據(jù)下面的規(guī)則選擇默認選項:
當v-model綁定的初始值為未定義或無效時
如果v-model綁定的值在選項中找不到,其默認選項是一條空的option。如果使用placeholder
或者<option disabled>
來展示默認選項,需要將:value
綁定到一個空字符串。這個空字符串值是undefined和""兩者都可用的universal value。
<select v-model="selectedValue"> <option :value="undefined" disabled selected value="">請選擇</option> <option v-for="option in options" :value="option.value"> {{ option.text }} </option> </select>
當初始綁定值是合法的
如果v-model綁定的值在選項中找到了,那么這個選項將被選擇。 值類型不會影響默認選項的處理。 只有綁定的值與選項值的比較結(jié)果決定了哪個選項被選中。
<select v-model="selectedValue"> <option disabled selected value="">請選擇</option> <option :value="option.value"> {{ option.text }} </option> </select>
總之,在Vue Select中,如果需要處理默認選項,您需要考慮合法值和無效值,并根據(jù)瀏覽器是否支持<option selected>
來判斷潛在的兼容性問題。