点赞效果切换

1、首先通过字段控制点赞、未点赞按钮的显示隐藏,页面绑定效果如下:

注意:条件绑定不能直接在img标签下绑定,需在img标签外加一层span,在span中绑定,否则不能实现显示隐藏效果。

已点赞按钮绑定:

未点赞按钮绑定:

后端:(页面读取接口)

首先用标准查询查询点赞表,若存在,则字段为true,判断代码如下:

若点赞在循环体内:

      _.each(循环数组名, function(v, k, l) {
         v.zan = false;
         if (条件)) {
           v.zan = true;
          }
        });
  

若点赞在循环体外:(记得添加_runCommand)

     tmp_data.zan = false;
     if (条件)) {
        tmp_data.zan = true;
     }
  

2、在未点赞按钮添加逻辑,并添加创建点赞记录接口。

接口代码段:获取用户ID、标准新建、(若需更新相应的点赞次数记录)根据id更新node信息、数据库刷新、自定义代码段。如图:

其中,串行代码段添加条件代码为:

其中,根据id更新node信息代码段中script代码如下图:

由于添加代码后需要刷新页面点赞数据,为避免页面跳转,可以使用后端控制同步数据元素主动同步一次数据来替换页面跳转。具体操作如下:

首先在同步数据元素处添加数据绑定并初始化:

然后,在相应需要刷新数据的接口添加updatalv,将同步数据元素绑定的属性值改为1,代码如下:

        /*INSBEGIN:CUSTOM*/
      function() {
        finish_data._runCommand = finish_data._runCommand ||[];
        finish_data._runCommand.push({
          "command":"updatelv",
          "params":[{
            "bianliang":1,
          }]
        });
      },
      /*INSEND:CUSTOM*/
  

3、在已点赞按钮处添加逻辑,并添加删除点赞记录的接口:

接口代码段:标准查询(查出点赞记录_id)、通过id删除记录、(若需更新相应的点赞次数记录)根据id更新node信息、数据库刷新。如图:

其中,根据id更新node信息代码段中script代码如下图: