收藏
回答

含有字典型的数组在data中如何定义

.wxml

<block wx:for="{{inks}}" wx:key="">

<image src="{{item.url}}"  mode='widthFix' style="width:{{item.width}}rpx;"></image></block>

.js

var para = [{ url:[], width:[] }];

var i=0;

data: {

imagepath:["../../images/ink1.png", "../../images/ink2.png", "../../images/ink3.png", "../../images/ink4.png"],

inks: [{ url: [], width: [] }],

},

一个函数下面:


para[i].url = that.data.imagepath[parseInt(Math.random() * 4)]  ;

para[i].width = Math.random() ;

i++;

this.setData({

inks:para,

})

第一次i=0时进来就可以,第二次i=1时就报错:Cannot set property 'url' of undefined

请问,这是什么问题?





最后一次编辑于  2019-01-22
回答关注问题邀请回答
收藏

2 个回答

  • 学无止进
    学无止进
    2019-10-11

    因为你的para只有一个值,如果para[1]就越界了老哥。

    2019-10-11
    有用
    回复
  • Bn
    Bn
    2019-01-18

    你能把代码弄好看一点吗

    2019-01-18
    有用
    回复 1
    • Brave 吴畏
      Brave 吴畏
      2019-01-22

      调整了,麻烦帮忙解答下,感谢

      2019-01-22
      回复
登录 后发表内容