微信小程序 实现点击收藏功能

微信小程序云开发之收藏文章功能的简单实现 简单实现收藏文章并展示在收藏界面 阅读详情

自己刚接触小程序,在网上找了很多的收藏的代码,但是发现都点击收藏后,退出去再回来已收藏又变成未收藏状态,然后自己就改改改 拼拼凑凑 终于改了出来 侵删 就是代码有些复杂 感觉可以更简便 但是我还没有找到方法 在这里记录一下 有大佬也可以指点一下

.wxml代码

   <view  class="save" >

    <text class="saveText">{{isClick?'已收藏':'收藏'}}</text>

    <image style="height: 50rpx; padding: 4rpx;" mode="heightFix" 
    src="{{isClick?'https://636c-cloud1-2gz5yzstf4bf5a3e-1309497881.tcb.qcloud.la/%E8%81%9A%E6%94%B6%E8%97%8Fgift.png?sign=f791e9c1b27556e4edbfb9dab7ae8fa8&t=1649143160':'https://636c-cloud1-2gz5yzstf4bf5a3e-1309497881.tcb.qcloud.la/%E8%81%9A%E6%94%B6%E8%97%8F%20(1).png?sign=06b33d1e2e959ece67f398aac815b110&t=1649143139'}}" bindtap="haveSave" ></image>

   </view>

.js代码

 data: {

        job: [],

        job2:[],

        id: '',

        isClick: false,

        jobStorage: [],

        jobId: ''

    },

haveSave(e) {

        let jobData = this.data.jobStorage;

        let truejobDat=this.data.job2;

        this.setData({job2:wx.getStorageSync('jobData')})

        for (var i =0; i<(this.data.job2.length); i++) {

          if (this.data.job2[i].saved ==true){

            jobData.push({

                jobid: this.data.job2[i].jobid,

                id: this.data.job2[i].id,

                saved:this.data.job2[i].saved})

          }

        }

        if (!this.data.isClick == true) {

         jobData.push({

         jobid: jobData.length,

         id: this.data.id,

         saved:true

         })

        wx.setStorageSync('jobData', jobData);//设置缓存

        wx.showToast({

        title: '已收藏',

         });

        } 

        else {

            console.log(jobData)

            for (var i =0; i<(jobData.length); i++) {

                if (jobData[i].id != this.options.index){

                   truejobDat.push({

                       jobid: jobData[i].jobid,

                       id: jobData[i].id,

                       saved:jobData[i].saved })

                     }

            }

         wx.showToast({

         title: '已取消收藏',

         });

        wx.setStorageSync('jobData', truejobDat);

        } 

        this.setData({

         isClick: !this.data.isClick

        })

        },

 onLoad: function (options) {

 let detailStorage  = wx.getStorageSync('jobData')

    console.log(wx.getStorageSync('jobData'))

    for (var i =0; i<(detailStorage.length); i++) {

        if (detailStorage[i].id==options.index) {

            if (detailStorage[i].saved){

                this.setData({isClick: true })

              }

        } }

},

结果:

微信小程序云开发实现收藏收藏页面(带样式布局) 没找到完整的教程,自己琢磨着做了一个 在云数据库创建一个新的空集合,一开始尝试用缓存数组做,但是一直搞不定取消收藏时删除对应的缓存数组数据,于是放弃。 1 、创建数据库 这里因为测试有数据,集合可以为空 2 、实现收藏和取消收藏 首先是在页面实现收藏和取消收藏,并将数据插入进云数据库 .wxml <block wx:if="{{isClick==false}}"> <text bindtap="handleCollect" data-id="{{item.name_id}}" cl 阅读详情

相关推荐

LabVIEW Modbus通讯实战:从安装库到读写寄存器的完整避坑指南

本文详细介绍了LabVIEW与Modbus通讯的完整实战指南,从安装库文件到读写寄存器的全流程操作,帮助开发者避开常见问题。通过虚拟串口配置、主机配置实战和高级调试技巧,提升工业自动化领域的通讯效率与可靠性。

milk8的博客 701

android 点击爱心变色,小程序学习(一):点击爱心变色 -- 最简单的事件实现

最近在学习小程序,想通过写文章来记录自己的学习历程,希望能做到每周都写……如何绑定一个事件微信小程序中,绑定事件要在标签内写入这两段代码:bindtap="fnActive"data-favourite = "{{isLike}}"复制代码bindtap 有两层含义,tap 代表这是一个点击事件,bind 代表这个事件能被监听,同时 bindtap 是一个缩写,bind:tap 才是它完全的写法。...

weixin_39526564的博客 497

DaVinci配置DID之二:工具链配置

本系列主要基于DaVinCi工具链来展开具体DID读写的配置以及最终实现。1,CDD准备2,工具链配置3,代码实现4,验证结果本文讲述流程2话不多说,走你~博主也是AutoSar小白,如果哪里表达的有问题,还请大佬们指点指点哈。接下来,让我们在下章关于代码具体实现的博文再相会哈~

weixin_48498880的博客 5634

微信小程序收藏功能实现(条件渲染、交互反馈)

哈喽大家好,本期是微信小程序专栏第十九期。每期内容是连载呢,建议大家可以看看往期内容,更好理解噢~以上就是今天的学习内容啦~如果有兴趣的话可以订阅专栏,持续更新呢~咱们下期再见~

颜颜yan_的博客 6725

微信小程序实现收藏功能

微信小程序收藏 前言 这篇文章主要介绍了微信小程序收藏功能实现代码,基本功能点击收藏显示收藏,在一个页面出现目前点击收藏的项目。需要的朋友可以参考下。 1.首先在wxml文件中添加点击事件 // 收藏 <view bindtap="haveSave"> <image class="save " src="{{isClick?'/images/xing2.png':'/images/xing1.png'}}" ></image> <

多喝开水 1万+

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

微信小程序图片点击切换和收藏功能是非常常用的!有更好写法的请留言,喜欢小程序和web前端开发的请加我微信Angelo_Sifan效果图如下1 &lt;image catchtap='onCollectionTap' wx:if="{{collected}}" src="/images/icon/collect1.png"&gt;&lt;/image&gt; 2 &lt;image ...

weixin_42087730的博客 2万+

mysql实现收藏功能_关于微信小程序收藏功能实现

这篇文章主要介绍了微信小程序收藏功能实现代码,基本功能点击收藏显示收藏,在一个页面出现目前点击收藏的项目。需要的朋友可以参考下需求点击收藏显示收藏,在一个页面出现目前点击收藏的项目需要解决的问题点击收藏后需要显示收藏,并且文字状态改变一个页面如何知道你点击收藏,并且获得你点击收藏的数据如何解决?数据状态绑定,并且由状态控制样式(三元运算符)缓存(setStorageSync,...

weixin_42400518的博客 821

微信小程序怎么实现收藏功能

小程序如何写收藏,分享,客服功能 收藏 页面中注册点击事件 <view class="goods_collect" bindtap="handleCollect"> <text class="iconfont {{isCollect?'icon-shoucang1':'icon-shoucang'}}"></text> <view class="collect_text">收藏</view> </view&gt

kamianlaidaa的博客 7003

微信小程序 点击收藏

微信小程序 点击收藏 需求 点击收藏显示收藏,在一个页面出现目前点击收藏的项目 需要解决的问题 点击收藏后需要显示收藏,并且文字状态改变 一个页面如何知道你点击收藏,并且获得你点击收藏的数据 如何解决? 数据状态绑定,并且由状态控制样式(三元运算符) 缓存(setStorageSync,getStorageSync),点击页面设置缓存(数据的id),显示页面获取缓存,通过获得缓存id...

wp2469698253的博客 2368

微信小程序收藏功能

首先在wxml页面布局: (我这里简单的步了个局) 这里我们用的技术栈就是wx:if,用它来判断收藏状态。catchtap是点击事件,点击切换收藏的状态。下面上js代码。 这样一个收藏功能加提示就做好了。 ...

weixin_47038177的博客 1703

android手机微信收藏功能实现,微信小程序收藏功能实现代码

需求点击收藏显示收藏,在一个页面出现目前点击收藏的项目需要解决的问题点击收藏后需要显示收藏,并且文字状态改变一个页面如何知道你点击收藏,并且获得你点击收藏的数据如何解决?数据状态绑定,并且由状态控制样式(三元运算符)缓存(setStorageSync,getStorageSync),点击页面设置缓存(数据的id),显示页面获取缓存,通过获得缓存id,将整个数据中的获得的id那一项,取出...

weixin_33205735的博客 826

微信 php收藏功能实现,关于微信小程序收藏功能实现

这篇文章主要介绍了微信小程序收藏功能实现代码,基本功能点击收藏显示收藏,在一个页面出现目前点击收藏的项目。需要的朋友可以参考下需求点击收藏显示收藏,在一个页面出现目前点击收藏的项目需要解决的问题点击收藏后需要显示收藏,并且文字状态改变一个页面如何知道你点击收藏,并且获得你点击收藏的数据如何解决?数据状态绑定,并且由状态控制样式(三元运算符)缓存(setStorageSync,...

weixin_35406812的博客 770

微信小程序收藏功能、分享功能、客服功能

微信小程序收藏功能: 首先在wxml页面布局: <view class="top"> <!-- 点击收藏图片 --> <img src="../image/home.png" catchtap="tocar" wx:for="{{!car}}"> <!-- 取消收藏图片 --> <img src="../image/home_active.png" catchtap="tocar" wx:for="{{car}}"> </

七的博客 2168

微信小程序收藏实现2020-05-16

微信小程序收藏实现 首先感谢下B站的编程小石头,我是看他视频做的并进一步完善改进。 想实现的效果:初始化为未收藏点击收藏,再次点击取消收藏。 1.初始化状态,需要下page外let shoucang=false,记录图标的状态的标志。 wx.cloud.database().collection('shoucang').where({ num: options.num, openid: wx.getStorageSync('openid') })//上一篇博

qq_43812744的博客 715

原生微信小程序缓存点击切换图片

点击利用缓存实现收藏成功和取消收藏 onLoad: function (options) { var postsCollected = wx.getStorageSync('posts_collected') if(postsCollected){ var postCollected = postsCollected[postId] this.setDa...

xiaoHelloWord的博客 510

微信小程序如何写收藏、分享、客服功能

1.收藏的分析 1.首先我们先给收藏功能添加一个点击事件 2.然后通过点击事件,来进行本地存储 3. 然后在收藏页面进行显示 1.这里我们需要进行一个简单的判断,来进行五角星的显示于隐藏 <view class="one4"> <i class="iconfont icon-shoucang1" bindtap="shouchang" wx:if="{{shous==true}}"></i> <i class=

weixin_48992836的博客 445

微信小程序点击收藏取消收藏显示(改变当前点击数组对象中的属性)

微信小程序点击收藏取消收藏显示(改变当前点击数组对象中的属性) 点击当前遍历数组item的子元素,改变当前点击的对象中的属性值。用mark绑定一个值,例如:mark:myMark="{{item.id}}"。由于item添加了点击事件,用catchtap="shoucang"绑定防止冒泡。 <view class="company-item" wx:for="{{companies}}" data-id="{{item.id}}" wx:key="id" bindtap = "Toqiyech

睡不够 1084

微信 php收藏功能,怎样使用微信小程序做出添加收藏

这次给大家带来怎样使用微信小程序做出添加收藏,使用微信小程序做出添加收藏的注意事项有哪些,下面就是实战案例,一起来看一下。需求点击收藏显示收藏,在一个页面出现目前点击收藏的项目需要解决的问题点击收藏后需要显示收藏,并且文字状态改变一个页面如何知道你点击收藏,并且获得你点击收藏的数据如何解决?数据状态绑定,并且由状态控制样式(三元运算符)缓存(setStorageSync,getStor...

weixin_31785421的博客 495

基于正点原子F407开发版和SPI接口屏移植touchgfx完整工程

教程参考我的博客,有详细的移植过程

qq_47811744
博客等级 码龄6年 0粉丝 · 1原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值