uni-app实现点赞评论功能

 更新时间:2019年11月25日 11:35:35   作者:houqq  
这篇文章主要介绍了uni-app实现点赞评论功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

模拟朋友圈实时点赞及评论功能

点赞思路:点击的时候,使用push(点赞)以及slice(取消赞)方法处理数组,并且调用点赞接口

评论思路:点击的时候,写多一个评论列表,当点击发送的时候commentStatus=true,且索引等于点击的索引。同时调用获取评论列表的接口

html

<view class="toolbar">
  <view class="timestamp">{{item.timetype}}</view>
  <!-- 点赞 如果islove==1,图片变为点赞的图片-->
  <view class="like" @tap="like(index,item.id)">
    <image :src="item.islove==1?'../../static/images/lllllike.png':'../../static/images/llike.png'"></image>
  </view>
  <!-- 评论 -->
  <view class="comment" @tap="comment(index,item.id)">
    <image src="../../static/images/pinglun.png"></image>
  </view>
</view>
<!-- 赞/评论区 -->
<view class="post-footer">
  <!-- 点赞区 -->
  <view class="footer_content" v-if="item.lovelist.length>0">
    <image class="liked" src="../../static/images/likelike.png"></image>
    <text class="nickname" v-for="(love,love_index) of item.lovelist" :key="love_index">{{love.name}},</text>
  </view>
  <!-- 评论区 -->
  <view class="footer_content" v-if="item.community_on.length>0" v-for="(comment,comment_index) in item.community_on" :key="comment_index">
    <text class="comment-nickname">{{comment.nickname}}: <text class="comment-content">{{comment.content}}</text></text>
  </view>
   <!-- 当评论发送成功之后实时渲染出来评论列表-->
  <view class="footer_content" v-if="commentStatus && index==commentIndex">
    <text class="comment-nickname">{{realtimename}}: <text class="comment-content">{{realtimecontent}}</text></text>
  </view>
</view>
// 点赞
like(index,communityId) {
  if (this.community[index].islove == 0) {
    this.community[index].islove = 1;
    this.community[index].lovelist.push(
      {name:this.userinfo.nickname,vipid:this.userinfo.id}
    )
    this.likeImport(communityId)
  } else {
    this.community[index].islove = 0;
    this.community[index].lovelist.splice(this.community[index].lovelist.indexOf(this.userinfo.nickname), 1)
    this.likeImport(communityId)
  }
},
// 点赞接口
likeImport(id) {
  app.vipidRequest({
    url: 'Vip/community_love',
    data: {
      id: id
    },
    header: {
      'content-type': 'application/x-www-form-urlencoded', 
    },
    method: 'POST',
    success:(res) => {
      if(res.data.status) {

      } else {
        console.log(res.data)
      }
    }
  })
},
// 点击评论
comment(index,communityId) {
  this.showInput = true; //调起input框
  this.focus = true; // 对焦
  this.communityId = communityId
},
// 点击发送
send_comment: function(message) {
  this.commentStatus = true 
  this.commentIndex = index
  this.realtimecontent = message.content
  this.realtimename = this.userinfo.nickname
  app.vipidRequest({
    url: 'Vip/community_on',
    data: {
      id: this.communityId,
      content: message.content,
      type: 1
    },
    header: {
      'content-type': 'application/x-www-form-urlencoded', 
    },
    method: 'POST',
    success:(res) => {
      if(res.data.status) {
        this.getCommunity() // 整个页面数据刷新
        this.init_input()
        this.commentStatus = false // 临时渲染评论的列表隐藏
        this.realtimecontent = ''
        this.realtimename = ''
        this.input_placeholder = '评论';
      } else {
        console.log(res.data)
      }
    }
  })
}
// 取消评论/评论完成输入框状态值
init_input() {
  this.showInput = false;
  this.focus = false;
  this.input_placeholder = '评论';
  this.is_reply = false;
},

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 原生js实现吸顶效果

    原生js实现吸顶效果

    本文主要介绍了原生js实现吸顶效果的示例。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03
  • Javascript Cookie读写删除操作的函数

    Javascript Cookie读写删除操作的函数

    Javascript Cookie读写删除操作的函数代码,需要操作cookies的朋友可以参考下。
    2010-03-03
  • JavaScript使用cookie记录临时访客信息的方法

    JavaScript使用cookie记录临时访客信息的方法

    这篇文章主要介绍了JavaScript使用cookie记录临时访客信息的方法,涉及javascript操作cookie的技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • JavaScript继承的三种方法实例

    JavaScript继承的三种方法实例

    这篇文章主要给大家介绍了关于JavaScript继承的三种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • Bootstrap自动适应PC、平板、手机的Bootstrap栅格系统

    Bootstrap自动适应PC、平板、手机的Bootstrap栅格系统

    这篇文章主要介绍了Bootstrap自动适应PC、平板、手机的Bootstrap栅格系统的相关资料,需要的朋友可以参考下
    2016-05-05
  • Javascript 中的 call 和 apply使用介绍

    Javascript 中的 call 和 apply使用介绍

    JavaScript 中通过call或者apply用来代替另一个对象调用一个方法,将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象
    2012-02-02
  • xmlplus组件设计系列之路由(ViewStack)(7)

    xmlplus组件设计系列之路由(ViewStack)(7)

    xmlplus 是一个JavaScript框架,用于快速开发前后端项目。这篇文章主要介绍了xmlplus组件设计系列之路由,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • Object.keys()的用法示例详解

    Object.keys()的用法示例详解

    Object.keys()是遍历一个对象自身的属性名称(不包括继承属性)的最简单方法,这篇文章主要介绍了Object.keys()的用法,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2023-07-07
  • javascript和jquery实现用户登录验证

    javascript和jquery实现用户登录验证

    这篇文章主要为大家详细介绍了javascript和jquery分别实现用户登录验证的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • javascript设计模式 – 迭代器模式原理与用法实例分析

    javascript设计模式 – 迭代器模式原理与用法实例分析

    这篇文章主要介绍了javascript设计模式 – 迭代器模式原理与用法,结合实例形式分析了javascript迭代器模式相关概念、原理、用法及操作注意事项,需要的朋友可以参考下
    2020-04-04

最新评论