这两天正在实现小程序购物车功能 。
参考了一些不错的案例。
其中,有通过在小程序中,调用后端接口,然后,接口返回来之后 ,再调用相应的
JS FUNCTION实现渲染页面的功能:
现在分享给大家:
首先,我们先看看当点击,购物车列表中,减按钮。如图:
点击后执行如下代码:
我们可以看到,第三个参数:function(data),其实是一个方法。
我们再看看setCartNum的声明
setCartNum(cartId, cartNum, successCallback) {
var that = this;
app.baseGet(app.U({ c: 'auth_api', a: "change_cart_num", q: { cartId: cartId, cartNum: cartNum} }), function (res) {
successCallback && successCallback(res.data);
});
},
可以看到,在app.U方法执行完后,会去执行一个successCallback的回调
successCallback相等于上面的
function (data) {
var itemData = "cartList.valid[" + index + "]";
that.setData({ [itemData]: item });
that.switchSelect();
}
所以,当执行完接口时,返回,会再去调用一个回调的方法。
此回调方法,直接渲染页面,更新数量