收藏
回答

setData只对js层有效,对wxml无效

问题模块 框架类型 问题类型 操作系统 工具版本
开发者工具 小程序 Bug macOS 1.02.1805181


页面中

requestUtil.request('app/shop/' + app.globalData.studio.ID + '/product', {}, function (res) {
     for (var i in res.data.data){
       for (var j in res.data.data[i].items){
         let a = res.data.data[i].items[j].Images.split(',')
         res.data.data[i].items[j].Icon=a[0]
       }
     }
     console.log("产品返回数据")
     console.log(res.data.data)
   
     _this.setData({
       items: res.data.data
     })
     _this.setData({
       abc:"我走这啦"
     })
     console.log(_this.data.items)
     for (let i = 0; i < res.data.data.length; i++) {
       for (let j = 0; j < res.data.data[i].items.length; j++) {
         _this.data.products[res.data.data[i].items[j].ID] = res.data.data[i].items[j]
       }
     }
   }
)

abc那个对无论真机还是开发者布局页面布局是有用的

items那个在开发者和真机都能打印的出来结果,但是但是对布局真机是没有用的

<view class='flex-row pd-l-items'>
  <scroll-view class='pd-l-i-left' scroll-y="true">
    <side-list items='{{items}}' customeIdx='{{selectedIdx}}'  bind:selected='selected'>side-list>
  scroll-view>
  <scroll-view class='pd-l-i-right' scroll-y='true' id='products' scroll-with-animation="true" scroll-into-view='{{showItem}}' bindscroll='onScroll'>
    <view wx:for='{{items}}' wx:key='Categoryid' class='pd-l-i-panel' >
      <text class='pd-l-i-type' id='type_{{item.Categoryid}}'>{{item.Category}}text>
      <view class='flex-row pd-l-i-one' wx:for='{{item.items}}' wx:key='id' >
        <image class='pd-l-i-img' src='{{item.Icon}}' bindtap='toDetail' data-detailId='{{item.ID}}'>image>
        <view style='width:100%'>
          <view class='pd-l-i-name' bindtap='toDetail' data-detailId='{{item.ID}}'>{{item.ReName}}view>
          <view class='pd-l-i-des' bindtap='toDetail' data-detailId='{{item.ID}}'>{{item.MoreDescription}}view>
          <view class='flex-row flex-space-between-center'>
              <text class='pd-l-i-price'><text style='font-size:24rpx'text>{{item.RealPrice/100}}text>
              <block wx:if="{{item.Remain>0}}">
              <count customeCount='{{selectedProducts[item.ID].Count}}' data-id='{{item.ID}}' bind:changed='countChanged'>count>
              block>
              <block wx:else><view style='font-size:30rpx;color:#666'>无货view>block>
          view>
      view>
              view>
    view>
    <view wx:if="{{!items||items.length==0}}" style="text-align:center;display:flex;flex-direction:column;padding-top:200rpx;justify-content:center;align-items:center">
        <image src='../../static/ic_empty.png' style='width:200rpx;height:160rpx'>image>
        <view style='font-size:30rpx;color:#999;margin-top:20rpx'>工作室暂未上架产品view>
    view>
  scroll-view>
view>

开发者工具中显示为,而真机中显示是为空的,甚至在布局中设置出来{{items.size}}的个数都是为0的,但在开发者工具中为1。

很急,求救啊

以下为开发者工具中


以下为真机联调



最后一次编辑于  2018-05-23  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

1 个回答

  • 陈
    2018-05-23

    ?{{abc}}在那里,{{items.size}}在那里,你把对应的截图给我看看

    2018-05-23
    赞同
    回复 7
    • 养豕道人
      养豕道人
      2018-05-23
      截图了
      2018-05-23
      回复
    • 陈
      2018-05-23回复养豕道人
      首先排查,输出看看它的值是多少(真机可以调试),{{items.length}}应该是没有问题的,它毕竟输出了0,而不是没输出,如果还没有解决可以试一下size或者在后面加(),如果还不行就只能手动传值了,其他的方法我也不清楚了
      2018-05-23
      回复
    • 养豕道人
      养豕道人
      2018-05-23
      但是很神奇的是,js里面能打出items的值,无论是真机还是环境
      2018-05-23
      回复
    • 陈
      2018-05-23回复养豕道人
      值显示肯定是没问题的,主要是length这个它能不能识别
      2018-05-23
      回复
    • 养豕道人
      养豕道人
      2018-05-23回复
      开发者能识别,真机不能?
      2018-05-23
      回复
    查看更多(2)