用户
 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,登录网站

小程序社区 首页 教程 新手教程 查看内容

微信小程序 setData 的坑,util.randomString is not a function报错

天下雪 2017-4-20 00:04

一:微信小程序 setData 的坑作者:李留白,来自原文地址最近在使用微信小程序的setData时,遇到了以下问题。如下:官网文档在使用setData()设置数组对象的某个元素的属性时,是这么使用的:Page({ data: { array: , ...

作者:李留白,来自原文地址 
最近在使用微信小程序的setData时,遇到了以下问题。如下:

官网文档在使用setData()设置数组对象的某个元素的属性时,是这么使用的:

  1. Page({
  2. data: {
  3. array: [{text: 'init data'}],
  4. },
  5. changeItemInArray: function() {
  6. this.setData({
  7. 'array[0].text':'changed data'
  8. })
  9. }
  10. })

使用了 ‘array[0].text’ : ‘changed data’ 这样的值。但在实际使用中,我们对数组的中的某个元素的设置是动态的。即 我们通常应该是 ‘array[‘+index+’].text’ : ‘changed data’ ,其中index应该是一个动态的数字。但显然,这样是无法使用在对象的key中的。

所以,我只能使用了一个变通的方法。如下:

  1. var param = {};
  2. var string = "array["+index+"].text;
  3. param[string] = 'changed data';
  4. 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里面没有对外公开这个方法!!

解决方案: 

鲜花
鲜花
鸡蛋
鸡蛋
分享至 : QQ空间
收藏
来自: 原文地址

相关阅读