小程序收藏功能如何做

2025-11-19 20:10:18

1、首先给你们展示一下我做的微信收藏页面,他是由商品列表,到详情页的展示。我们先把数据绑定到页面,那你收藏的这个值也一定有,我采用的有两种表现形式。一个是传值数值,后台自动转换星星颜色;一个也是传数值,页面控制星星颜色。

小程序收藏功能如何做

小程序收藏功能如何做

小程序收藏功能如何做

小程序收藏功能如何做

2、具体代码展示:数据列表里面的就适合前一个方法。

html:

<view class="collection" bindtap="collect" data-types='{{Type}}' data-id="{{item.ID}}" data-status="{{item.ISColection}}">

<!-- <image src='https://sale.popoli.cn/WXIMG/Product/collection.png' ></image> -->

<image src="{{item.ISname}}"></image>

</view>

js:

//收藏点击

collect: function (e) {

//商品id

var ID = e.currentTarget.dataset.id

//状态

var status = e.currentTarget.dataset.status

//然后调用你的接口,刷新页面就可以了。

//我的接口写的有点臭长,就随便给你看看啊。

ProductObj.OpenID = OpenID;//这个是微信账号,你获取

ProductObj.SaleID = ID;

ProductObj.ISColection = status;

Commom.requestLoading("InserSaleCollection", ProductObj, '', function (res) {

var ISColection = res.ISColection ? true : false;

// var ISColection = false;

console.log(res)

//刷新页面

function ck() {

var ProductObjc = new Object();

ProductObjc.OpenID = OpenID;//这个是微信账号,你获取

ProductObjc.SearchType = 0;

Commom.requestLoading("GetSale", ProductObjc, '', function (res) {

var ISColection = res.ISColection ? true : false;

// var ISColection = false;

console.log(res)

that.setData({

list: res.Content.List,

ISColection: ISColection

})

}, function () {

wx.showToast({

title: '加载数据失败',

}), that.setData({

list: res.Content.List,

ISColection: ISColection

})

})

}

if (status == 1) {

wx.showToast({

title: '您已取消收藏',

icon: 'success',

duration: 2000

})

ck()

} else {

wx.showToast({

title: '收藏成功',

icon: 'success',

duration: 2000

}), ck()

}

}, function () {

wx.showToast({

title: '加载数据失败',

})

})

}

3、具体代码展示:详情页面里面的的就适合后一个方法。

详情页面一开始页面先展示数据,同样的这个收藏的星是有值的,经过js处理,页面上会显示对应的星。

html:

<view class="custom">

<view class="center" bindtap='conllect' data-iscolection='{{ISColection}}' data-id='{{item.ID}}'>

<view>

<image src='{{beforimg}}' mode='widthFix'></image>

</view>

<view wx:if="{{befor}}">

<text>收藏</text>

</view>

<view wx:else>

<text>已收藏</text>

</view>

</view>

</view>

js:

conllect: function (data) {

var that = this

//收藏值 0 \1

var iscolection = data.currentTarget.dataset.iscolection;

//商品id

var id = data.currentTarget.dataset.id;

var ProductObj = new Object();

ProductObj.OpenID = OpenID;

ProductObj.SaleID = id;

ProductObj.ISColection = iscolection;

Commom.requestLoading("InserSaleCollection", ProductObj, '', function (res) {

console.log(res)

if (iscolection == 1) {

//取消收藏

that.setData({

befor: true,

beforimg: 'https://sale.popoli.cn/WXIMG/Prodetail/collection.jpg',

ISColection: 0

})

} else {

//收藏

that.setData({

befor: false,

beforimg: 'https://sale.popoli.cn/WXIMG/Product/al_collection.png',

ISColection: 1

})

}

}, function () {

wx.showToast({

title: '加载数据失败',

})

})

}

}

发不了视频,友情提醒,那个字体是我手机买的字体,不影响功能。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢