收藏
回答

picker 在手机上不显示选择项

微信小程序的picker 在手机上调试点击不出现选择项,选择项是从数据库加载出来了,在开发工具可以显示。

不知道是不是代码写错还是其他原因。

回答关注问题邀请回答
收藏

10 个回答

  • 晨
    2017-07-12

    逻辑上是支持异步设置数据的。你确定setData数据的类型和picker属性要求一致吗?

    2017-07-12
    有用
    回复
  • 晨
    2017-07-12

    不好意思,打错字,应该是两次获取数据,onLoad和onReady调用时机相近,可以只使用一个。这是题外话。


    你给的例子太复杂,我这边没法运行复现。麻烦你使用一个最简单的场景,或者确认一下参数类型是否正确。

    2017-07-12
    有用
    回复
  • 晨
    2017-07-12

    请提供semesterNameList的完整结构,写一个能复现问题的最简单的例子。另外为什么要在onLoad的onReady中两侧获取数据?

    2017-07-12
    有用
    回复
  • 晨
    2017-07-12

    请提供一下出现问题的机型和微信版本,并提供能复现问题的简单代码示例。

    2017-07-12
    有用
    回复
  • 晹晗
    晹晗
    2021-05-10

    我也遇到了相同的问题,请问楼主如何解决的啊

    请求后端数据库已返回数据,但是picker里就是没数据显示,赋值也没问题

    2021-05-10
    有用
    回复
  • 小春
    小春
    2017-07-12

    手机上是否“打开调试”?

    2017-07-12
    有用
    回复
  • Ken
    Ken
    2017-07-12

    简单来说就是从数据库获取一个对象数据 把他放在picker 上,因为是异步请求 他先运行了加载的方法 后获取到数据 导致picker  没有加载出数据,这个怎么解决

    2017-07-12
    有用
    回复
  • Ken
    Ken
    2017-07-12


    麻烦你也慢下这个帖,其实问题一样

    2017-07-12
    有用
    回复
  • Ken
    Ken
    2017-07-12

    另外为什么要在onLoad的onReady中两侧获取数据? 什么意思啊? 这两个方法加载数据会有问题吗?



    2017-07-12
    有用
    回复
  • Ken
    Ken
    2017-07-12

    测试手机是红米note2 ,微信基础库版本 1.4.0

    wxml:

             <view class="weui-cell__bd">

                        <picker bindchange="bindSemesterNameChange" value="{{semesterNameList[index].SemesterId}}" range="{{array}}" name="semesterId">

                            <view class="weui-select weui-select_in-select-after">{{semesterNameList[index].SemesterName}}</view>

                        </picker>

                    </view>


    js:

    读取数据

      data: {

        semesterNameList: '',

        array: '',

        index: '0'

      },

      onLoad: function (options) {

        wx.showLoading({

          title: '加载中',

        })

        var that = this;

        GetSemesterList(that);

      },

    赋值

     onReady: function () {

        var that = this;

        GetPickerSemester(that);

      },

      bindSemesterNameChange: function (e) {

        this.setData({

          index: e.detail.value

        })

      }

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