做一個彈窗選擇器的時候遇到 picker-view 滑動進行中的問題
滑動未停止前,是不會調用 @change
value值是不支持雙向綁定的
選擇的值需要在 @change 回調里面去賦值
單次滑動的事件執行順序是 pickstart change pickend
注意: change pickend 有幾率在滑動結束后有延遲才回調
let isOver = true;
<picker-view
v-model.lazy="value"
@pickstart="onPickStart"
@pickend="onPickEnd"
@change="onChange">
<picker-view-column>
<p v-for="(item,index) in list" :key="index" class="p-inner-picker-view-column">{{item.name}}</p>
</picker-view-column>
</picker-view>
onPickStart({ mp }) {
// console.info(mp);
isOver = false;
},
onPickEnd({ mp }) {
isOver = true;
// console.info(mp);
},
onChange({ mp }) {
// console.info(mp);
let _data = mp.detail.value;
this.value = _data;
},