博客
关于我
夜光带你走进 微信小程序开发(二十六)擅长的领域
阅读量: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/

你可能感兴趣的文章
Navicat中怎样将SQLServer的表复制到MySql中
查看>>
navicat创建连接 2002-can‘t connect to server on localhost(10061)且mysql服务已启动问题
查看>>
Navicat可视化界面导入SQL文件生成数据库表
查看>>
Navicat向sqlserver中插入数据时提示:当 IDENTITY_INSERT 设置为 OFF 时,不能向表中的标识列插入显式值
查看>>
Navicat因导入的sql文件中时间数据类型有参数而报错的原因(例:datetime(3))
查看>>
Navicat如何连接MySQL
查看>>
navicat导入.sql文件出错2006- MySQLserver has gone away
查看>>
navicat怎么导出和导入数据表
查看>>
Navicat通过存储过程批量插入mysql数据
查看>>
Navicat(数据库可视化操作软件)安装、配置、测试
查看>>
NB-IOT使用LWM2M移动onenet基础通信套件对接之APN设置
查看>>
nc命令详解
查看>>
ndk特定版本下载
查看>>
NDK编译错误expected specifier-qualifier-list before...
查看>>
Neat Stuff to Do in List Controls Using Custom Draw
查看>>
Necurs僵尸网络攻击美国金融机构 利用Trickbot银行木马窃取账户信息和欺诈
查看>>
NeHe OpenGL教程 07 纹理过滤、应用光照
查看>>
NeHe OpenGL教程 第四十四课:3D光晕
查看>>
Neighbor2Neighbor 开源项目教程
查看>>
neo4j图形数据库Java应用
查看>>