微信小程序> 微信小程序点击切换图片、收藏功能的实现!

微信小程序点击切换图片、收藏功能的实现!

浏览量:428 时间: 来源:旧梦空城人心凉

微信小程序图片点击切换和收藏功能是非常常用的!有更好写法的请留言,喜欢小程序和web前端开发的请加我微信Angelo_Sifan

效果图如下

小程序

1  image  catchtap='onCollectionTap' wx:if="{{collected}}" src="/images/icon/collect1.png"/image2       image wx:else catchtap='onCollectionTap' src="/images/icon/collect.png"/image

首先对Image绑定相应变量,选用catchxxx而不选用bindxxx进行绑定是因为,catch不会出发冒泡事件就不会向父节点传递,写的过程中一定要用wx:if和wx:else来进行判断。然后我们还需要在JS中对onCollectionTap变量进行定义,最后当组件触发事件时,逻辑层绑定该事件的处理函数会收到一个事件对象。

12345678910111213141516171819202122232425262728293031323334353637/*这是对应的JS文件*/ 2 Page({ 3 data: { 4 5     }, 6     onLoad: function (option) { 7     var postId = option.id;//要先在对应的数据文本中对每个栏目定义postId、比如postId: 0 postId:1 8     this.data.currentPostId = postId; //借助顶部data作为中转,拿到上面这行postid后,将它放到下面var postCollected = postsCollected[]中 9         //将这个postId从onLoad中传递到下面的onCollectionTap中10         var postData = postsData.postList[postId];//定义每个新闻列表对应顺序是哪个新闻内容1112 //用户收藏功能14        var postsCollected = wx.getStorageSync('posts_collected'//从缓存中读取所有的缓存状态15         if (postsCollected) {   //postsCollected为真的情况,在缓存中存在16             var postCollected = postsCollected[postId]//读取其中一个缓存状态17             this.setData({18                 collected: postCollected //将是否被收藏的状态上绑定到collected这个变量上19             })20         }21         else {       //为假的情况,缓存中为空的情况22             var postsCollected = { }; //对postsCollected进行一个赋值操作,从而防止为空,从而省掉后面对它是否为空进行测试的步骤23             postsCollected[postId] = false// 让当前的这篇文章状态为false,从而收藏星星不点亮24             wx.setStorageSync('posts_collected', postsCollected);//将postsCollected对象放到缓存中25         }26     },27     onCollectionTap: function (event) {    // 定义onCollectionTap事件用来确定文章是否收藏,如果没收藏就能点亮星星进行收藏28         var postsCollected = wx.getStorageSync('posts_collected');   //获取缓存的方法29         var postCollected = postsCollected[this.data.currentPostId];   

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎