picker-view每次隐藏掉view的时候都会触发bindchange事件
发布于 6 年前 作者 yanliu 17784 次浏览 来自 问答

<view class=“area-picker {{showAreaView ? ‘show’ : ‘hide’}}”>

  <view class=“area-picker-title”>

    <view class=“btn-cancel vm” bindtap=“cancelSelectArea”>取消</view>

    <view class=“area_name vm”>{{province_temp}}{{city_temp}}{{district_temp}}</view>

    <view class=“btn-confirm vm” bindtap=“selectArea”>确定</view>

  </view>

  <picker-view indicator-style=“height: 50px;” style=“width: 100%; height: 300px;” value="{{area_value}}" bindchange=“bindChangeArea”>

    <picker-view-column>

      <view wx:for="{{province_name_arr}}" style=“line-height: 50px”>{{item}}</view>

    </picker-view-column>

    <picker-view-column>

      <view wx:for="{{city_name_arr}}" style=“line-height: 50px”>{{item}}</view>

    </picker-view-column>

    <picker-view-column>

      <view wx:for="{{district_name_arr}}" style=“line-height: 50px”>{{item}}</view>

    </picker-view-column>

  </picker-view>

</view>

</view>

不管是选择取消还是确定,每次都重置为[0,0,0]很让人蛋疼,不知是不是我没写好

3 回复

同样遇到这个问题,用hidden控制picker-view的隐藏、显示时,会出现value重置为[0,0,0]的情况。

用1楼的方法,使用wx:if不会出现这个问题。

已知问题,下版修复。目前建议隐藏时不用update value

我也遇到过,不要使用hidden 使用wx:if 强制渲染可以解决

回到顶部