博客
关于我
夜光带你走进 微信小程序开发(二十六)擅长的领域
阅读量:311 次
发布时间:2019-03-01

本文共 2245 字,大约阅读时间需要 7 分钟。

夜光序言:

 

吾挥兵摆一门星罗棋布,征战八荒,为尔争得万里繁华。

 

 

 

 

 

 

 

 
 
正文:
 
                                              以道御术 / 以术识道

 

 

// pages/news/news-detail/news-detail.jsvar newsData = require("../../data/newsdata.js")Page({  /**   * 页面的初始数据   */  data: {      // detailData:[] 这个初始化,我们也先不要  },  /**   * 生命周期函数--监听页面加载   * 夜光:这个生命周期函数用的情况比较多   */  onLoad: function (options) {    //  console.log(options.newsid)    console.log();    this.setData(      // 这个不行嗯~       // detailData:newsData.initData[options.newsid]      newsData.initData[options.newsid]    )    this.setData({      newsid: options.newsid    })    //测试本地存储    // wx.setStorageSync("key", "data") 我先把这句代码注释掉,接下来    // console.log(wx.getStorageSync("key"));    //收藏存储数据格式    //var newsCollect={    //   0:true    //   1:flase    //}    //第一次进入的时候,判断是否存在本地存储以及是否收藏,这里       var newsCollect = wx.getStorageSync("newsCollect");       //之后我们判断       //如果newsCollect存在,则代表以前收藏过或者取消过收藏       if (newsCollect){         var newCollect = newsCollect[options.newsid]         this.setData({           collected: newCollect         })       }else{         //第一次进入,根本不存在数据         var newsCollect = {}; //先定义一个空对象         //我把当前唯一id放到newsCollect对象中,默认指定false         newsCollect[options.newsid] = false; //这里,我们需要对对象和数组之间的关系有较为深刻的认识         //放到本地存储之中去         wx.setStorageSync("newsCollect", newsCollect)       }          },    //下面,我们写一个方法    collectTap:function(event){      //我们一般写方法,都会先在控制台随便打印点东西,看看是否有问题      // console.log("1")      // console.log(this.data.newsid); //打印看一下 有了效果,我们就可以干活了      // this.data.newsid      //既然如此,我们在这个里面就要存储了      //注意:newsCollect是所有数据的集合      var newsCollect = wx.getStorageSync("newsCollect"); //这里,我们数据存储的格式就是newsCollect      //这里需要提醒一下,第一次进来的时候就要判断数据是否存在      //但是这里并没有写,这里是进来之后的逻辑,这需要注意一下      //下面我们再定义一个一条的      // var newCollect = newsCollect      var newCollect = newsCollect[this.data.newsid];      // console.log(newCollect)      //这里是什么逻辑,如果是收藏的则被取消,如果未被收藏则收藏      newCollect = !newCollect; //反正取反么,true or false      //更新到本地存储中      newsCollect[this.data.newsid] = newCollect;      wx.setStorageSync("newsCollect", newsCollect); //newsCollect把这个集合的整体再放进去      //后台数据是更新了,那么前端的视图层如何更新呢      //下面就是渲染到,并更新视图      this.setData({        //暂时不知道,因为我们根本不知道视图是怎么改变的        collected: newsCollect[this.data.newsid]      })    }  })

 

 

 

 

转载地址:http://subo.baihongyu.com/

你可能感兴趣的文章
Mysql数据库 InnoDB存储引擎中Master Thread的执行流程
查看>>
MySQL数据库 范式
查看>>
Mysql数据库B-Tree索引
查看>>
mysql数据库io空闲_mysql数据库磁盘io高的排查
查看>>
mysql数据库root密码忘记,查看或修改的解决方法
查看>>
MySQL数据库SQL注入靶场sqli通关实战(附靶场安装包)
查看>>
MYSQL数据库下载安装(Windows版本)
查看>>
MySQL数据库与Informix:能否创建同名表?
查看>>
mysql数据库中的数据如何加密呢?mysql8.0自带新特性
查看>>
MySQL数据库优化
查看>>
MySQL数据库优化总结
查看>>
MySQL数据库入门看这一篇文章就够了
查看>>
Mysql数据库函数contac_函数:函数删除操作语法&使用例——《mysql 从入门到内卷再到入土》...
查看>>
mysql数据库命令备份还原
查看>>
mysql数据库基础教程
查看>>
MySQL数据库备份
查看>>
mysql数据库备份与恢复
查看>>
MySQL数据库备份实战
查看>>
Mysql数据库备份的问题:mysqldump: Got error: 1049: Unknown_无需整理
查看>>
mysql数据库如何重置密码是多少钱_MySQL数据库忘记root密码如何重置修改
查看>>