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

你可能感兴趣的文章
NativeWindow_01
查看>>
Native方式运行Fabric(非Docker方式)
查看>>
Nature | 电子学“超构器件”, 从零基础到精通,收藏这篇就够了!
查看>>
Nature和Science同时报道,新疆出土四千年前遗骸完成DNA测序,证实并非移民而是土著...
查看>>
Nature封面:只低一毫米,时间也会变慢!叶军团队首次在毫米尺度验证广义相对论...
查看>>
Nat、端口映射、内网穿透有什么区别?
查看>>
Nat、端口映射、内网穿透有什么区别?
查看>>
nat打洞原理和实现
查看>>
NAT技术
查看>>
NAT模式/路由模式/全路由模式 (转)
查看>>
NAT模式下虚拟机centOs和主机ping不通解决方法
查看>>
NAT的两种模式SNAT和DNAT,到底有啥区别?
查看>>
NAT的全然分析及其UDP穿透的全然解决方式
查看>>
NAT类型与NAT模型详解
查看>>
NAT网络地址转换配置实战
查看>>
NAT网络地址转换配置详解
查看>>
navbar navbar-inverse 导航条设置颜色
查看>>
Navicat for MySQL 命令列 执行SQL语句 历史日志
查看>>
Navicat for MySQL 查看BLOB字段内容
查看>>
Navicat for MySQL笔记1
查看>>