使用iView的Cascader級聯(lián)選擇器時(shí),遇到了change-on-select相關(guān)問題。
當(dāng)然Cascader是動態(tài)方式加載選項(xiàng)的。
change-on-select: true,初始值只能設(shè)置第一級
廢話不多說,上栗子iView Cascader change-on-select為true問題,當(dāng)然在實(shí)際應(yīng)用中,肯定是有設(shè)置初始值的情況的,所以需要找到相關(guān)解決方案。
官網(wǎng)注解:change-on-select 當(dāng)此項(xiàng)為 true 時(shí),點(diǎn)選每級菜單選項(xiàng)值都會發(fā)生變化
change-on-select: false,可以設(shè)置初始值
既然change-on-select為true時(shí)有問題,那么change-on-select設(shè)置為false呢?
iView Cascader change-on-select為false問題
初始值可以設(shè)置了,很棒,有個缺點(diǎn)就是無法點(diǎn)擊菜單選項(xiàng),值就直接生效。
如果既想設(shè)置初始值,又想每次點(diǎn)擊菜單選項(xiàng)值都發(fā)生變化呢?有沒有解決方案?!
當(dāng)然,是有的。
既設(shè)置初始值,又能夠點(diǎn)擊菜單選項(xiàng)值發(fā)生變化
怎么做呢?
答:動態(tài)的更改change-on-select咯,且通過on-visible-change事件。iView Cascader 既能設(shè)置初始值,又能點(diǎn)擊菜單選項(xiàng)值變化
on-visible-change 展開和關(guān)閉彈窗時(shí)觸發(fā) 顯示狀態(tài),Boolean
<!- 增加on-visible-change事件 -->
<cascader :data="data4" :load-data="loadData" v-model="value2"
:change-on-select="changeOnSelect"
@on-visible-change="handleChangeOnSelect">
</cascader>
/**
* 動態(tài)設(shè)置change-on-select的值
* 當(dāng)級聯(lián)選擇器彈窗展開時(shí),設(shè)置change-on-select為true,即可以點(diǎn)選菜單選項(xiàng)值發(fā)生變化
* 當(dāng)級聯(lián)選擇器彈窗關(guān)閉時(shí),設(shè)置change-on-select為false,即能夠設(shè)置初始值
*/
handleChangeOnSelect (value) {
this.changeOnSelect = value
}
(完)