作者:李留白,来自原文地址
最近在使用微信小程序的setData时,遇到了以下问题。如下:
官网文档在使用setData()设置数组对象的某个元素的属性时,是这么使用的:
Page({
data: {
array: [{text: 'init data'}],
},
changeItemInArray: function() {
this.setData({
'array[0].text':'changed data'
})
}
})
使用了 ‘array[0].text’ : ‘changed data’ 这样的值。但在实际使用中,我们对数组的中的某个元素的设置是动态的。即 我们通常应该是 ‘array[‘+index+’].text’ : ‘changed data’ ,其中index应该是一个动态的数字。但显然,这样是无法使用在对象的key中的。
所以,我只能使用了一个变通的方法。如下:
var param = {};
var string = "array["+index+"].text;
param[string] = 'changed data';
that.setData(param);
即提前把对象准备好。
希望以后可以有更好的方法。
二:Error之util.randomString is not a function
作者:古加文,来自原文地址 WAService.js:3 thirdScriptError util.randomString is not a function;at “pages/index/index” page lifeCycleMethod onLoad function TypeError: util.randomString is not a function
事情是这样的,楼主有个需求需要随机生成字符串,楼主便加入了一个方法到util中,在一个页面调用于是发生了这个问题,楼主不解啊,引用没有错误啊,为毛? 由于微信小程序的资源还很少,所以楼主一直没找到问题根源,最后终于在某个论坛楼主发现了,原来在util里面没有对外公开这个方法!!
解决方案: