收藏
回答

一个页面放置多个picker的bug


我在一个页面放置三个picker,选择第一个picker的时候,后边的bindchange事件也会跟着触发,见下图:






<view class="head">
   <view class="picker">
     <picker
     bindchange="stylesChange"
     value="{{stylesIndex}}"
     range="{{styles}}">
       <view class="weui-cell weui-cell_access">
         <view class="weui-cell__bd">商品样式view>
         <view class="weui-cell__ft weui-cell__ft_in-access">
           {{styles[stylesIndex]}}
         view>
       view>
     picker>
   view>
   <view class="picker">
     <picker
     bindchange="countChange"
     value="{{countIndex}}"
     range="{{count}}">
       <view class="weui-cell weui-cell_access">
         <view class="weui-cell__bd">显示个数view>
         <view class="weui-cell__ft weui-cell__ft_in-access">
           {{count[countIndex]}}
         view>
       view>
     picker>
   view>
   <view class="picker">
     <picker
     bindchange="categoryChange"
     value="{{categoryIndex}}"
     range="{{category}}">
       <view class="weui-cell weui-cell_access">
         <view class="weui-cell__bd">商品列表view>
         <view class="weui-cell__ft weui-cell__ft_in-access">
           {{category[categoryIndex]}}
         view>
       view>
     picker>
   view>
 view>
// pages/addProductList/addProductList.js
Page({
 /**
  * 页面的初始数据
  */
 data: {
   styles: ['小图','大图','详细列表'],
   stylesIndex: 0,
   count: [4,6,8,16,20],
   countIndex: 0,
   category: ['推荐商品','最新商品','...'],
   categoryIndex: 0,
   productList: 4
 },
 stylesChange(e){
   this.setData({
     stylesIndex: e.detail.value
   })
 },
 countChange(e){
   this.setData({
     productList: +this.data.count[e.detail.value],
     countIndex: e.detail.value
   })
 },
 categoryChange(e){
   this.setData({
     categoryIndex: e.detail.value
   })
   // 发起请求,获得分类下的商品列表
 },
 /**
  * 生命周期函数--监听页面加载
  */
 onLoad: function (options) {
 
 },
 /**
  * 生命周期函数--监听页面初次渲染完成
  */
 onReady: function () {
 
 },
 /**
  * 生命周期函数--监听页面显示
  */
 onShow: function () {
 
 },
 /**
  * 生命周期函数--监听页面隐藏
  */
 onHide: function () {
 
 },
 /**
  * 生命周期函数--监听页面卸载
  */
 onUnload: function () {
 
 },
 /**
  * 页面相关事件处理函数--监听用户下拉动作
  */
 onPullDownRefresh: function () {
 
 },
 /**
  * 页面上拉触底事件的处理函数
  */
 onReachBottom: function () {
 
 },
 /**
  * 用户点击右上角分享
  */
 onShareAppMessage: function () {
 
 }
})


最后一次编辑于  2017-07-06
回答关注问题邀请回答
收藏

2 个回答

  • 晨
    2017-07-06

    真机上有出现同样问题吗?

    2017-07-06
    有用
    回复
  • 马潮
    马潮
    2017-07-06

    真机上试了一下,没有出现问题。

    2017-07-06
    有用
    回复
登录 后发表内容