在实现新闻小程序的文章收藏功能时,第一次点击新闻详情时控制台正常输出,但是当我第再次点击查看其他文章详情的时候,控制台会抛出错误:Setting data field "collected" to undefined is invalid.

经过一下午的时间,终于解决了这个错误。

出现这个错误的原因是在页面加载时会从缓存里获取文章的收藏状态,只有点进文章详情时,才会将该文章的收藏状态存到缓存里。没有点进过的文章的收藏状态是为空的。在小程序里,数据如果为空,会将其转为undefined。所以系统会抛出这个错误。

解决方法:进行setDate操作之前对postCollected进行判断,判断其是否为空。如果为空则将collected设为false,收藏按钮将会显示灰色的图片。

var postsCollected = wx.getStorageSync("posts_collected");// ----问题所在位置----if(postsCollected){  //postsCollected为真的情况,在缓存中存在// debugger;var postCollected = postsCollected[postId];  // 读取其中一个缓存状态// this.setData.postsCollected = postsCollected;// 需要对获取到的状态做判断,如果没有点击过收藏按钮的文章,缓存中是没有这个数据的,所有会提示collected undefinedif(!postCollected){this.setData({collected: false})}else{this.setData({collected: postCollected})}

小程序错误:Setting data field collected to undefined is invalid.相关推荐

  1. 微信小程序 - Setting data field “xxx“ to undefined is invalid.报错原因及解决方案

    前言 ## 完整报错(SEO) ## 翻译: 将数据字段"XXX"设置为未定义是无效的. Setting data field "xxx" to undefin ...

  2. 微信小程序——tap undefined Setting data field currType to undefined is invalid.

    微信小程序,点击tap 赋值报这个错误. tapType: function (e){ var that = this; console.log(e) const currType = e.curre ...

  3. 微信小程序错误监控方法谈

    对于小程序开发者来说,如何进行错误监控一直是个头疼的问题.由于小程序开发迭代较快,会存在系统问题,机型问题和版本的兼容问题,有时候我们在自行测试中完美运行,可总是有用户抱怨使用异常.如果我们对小程序的 ...

  4. 微信小程序报Cannot read property ‘setData‘ of undefined的错误

    微信小程序报Cannot read property 'setData' of undefined的错误 最近在学习开发微信小程序,记录下项目中遇到的一个报错. 具体报错如下: 这时打印下this发现 ...

  5. 小程序--错误{errcode:40029,errmsg:invalid code, hints: [ req_id: weh8ka0297hc58 ]}

    1 小程序–错误{"errcode":40029,"errmsg":"invalid code, hints: [ req_id: weh8ka029 ...

  6. 小程序中Cannot read property ‘setData‘ of undefined问题的解决

    小程序中Cannot read property 'setData' of undefined问题的解决 参考文章: (1)小程序中Cannot read property 'setData' of ...

  7. 反编译微信小程序错误: $gwx is not defined和__vd_version_info__ is not defined 已解决

    前言 $gwx is not defined 报错 __vd_version_info__ is not defined 报错 请看 由于微信小程序内部升级的原因,最近github上的wxappUnp ...

  8. 微信小程序 - 云开发data exceed max size 解决方案

    GitHub Demo 地址: jh-weapp-demo 实现一些常用效果.封装通用组件和工具类 小程序码 在使用云开发时,对单个字段是数组类型的数据进行更新操作时,报了一个错(只在真机出现),da ...

  9. 小程序如何用data的数据控制页面展示_17. 教你零基础搭建小程序:小程序事件绑定(1)

    本章以及下一章学习小程序的事件绑定,我们通过一个案例来讲解其中相关的知识点,便于大家理解哦~~ 首先,先来看这个案例的需求. 我们使用画图工具,先在上面绘制一个小程序页面,如下图: 再在页面的最上方放 ...

  10. 微信小程序报Cannot read property 'setData' of undefined的错误

    最近在学习微信小程序的开发,让我吐槽的是,都9102年了,怎么还是有有时不能复制,有时不能打中文的bug呢,这个时候,你可以Ctrl+shift+w一下,如果还不行,那就得重启了.. 进入正题吧,刚在 ...

最新文章

  1. 【怎样写代码】小技巧 -- .NET配置文件详解
  2. python培训班时间 费用-深圳python培训班大概多少费用
  3. SSIS package 更新 variable
  4. Android之在eclipse编译项目出现unable to resolve target android-20解决办法
  5. pycharm的安装
  6. 大蚂蚁在64位系统下,右键没有快发的解决方案
  7. mysql 插入学生信息_添加学生信息(连接数据库初学)
  8. SharePoint Windows Workflow Foundation
  9. python软件下载安装中文版-pathon软件下载 python官方中文版3.6.0
  10. GIT插件EGIT使用手册
  11. Linux解压bz2文件的方法
  12. ios抓包软件Thor限时折扣6元中,手慢无
  13. 智慧小区智能安防设计方案
  14. gtx1650显卡什么级别! GTX1650相当于什么显卡
  15. 在html中怎样写年月日的代码,注册时选择出生年月日的html+JS
  16. 自定义注解,实现jpa查询,使用起来很方便,记录一下
  17. 天线为什么会有多次谐振_如果天线不处于谐振状态,辐射效率会受到多大影响?...
  18. 1.1[潜心创作]冒险游戏(MineCraft)不喜勿喷
  19. 0代码实现接口自动化测试 —— RF框架实践
  20. 教育部人工智能科技创新专家组2名单(公号回复“教育部AI工作组”下载PDF资料,欢迎转发、赞赏支持科普)

热门文章

  1. 千兆网线水晶头的接法
  2. 饥荒联机版服务器启动慢_饥荒(Don#x27;t Starve Together)腾讯云服务器搭建(unbuntu篇)
  3. MFC学习篇:鸡啄米MFC教程字体格式设置函数解析
  4. kvm虚拟机上安装kata
  5. OpenGL绘制三维彩色立方体并实现自动旋转
  6. 全面理解面向对象的 JavaScript
  7. DIOR数据集转COCO格式 paddlepaddle
  8. 二十、数据库的高可用是怎么实现的?
  9. 眼见为实(2):介绍Windows的窗口、消息、子类化和超类化
  10. 七年级计算机会考重点知识点总结,2021年度七年级科学会考知识点整理.doc