云开发(微信-小程序)笔记(十六)---- 评论

简介: 云开发(微信-小程序)笔记(十六)---- 评论

云开发(微信-小程序)笔记(十五)---- 收藏,点赞(下)

1.引言

在之前编写了收藏,点赞的功能,当然评论这个功能也是不可缺少,这次我们将编写评论的功能。

2.代码编写

2-1.在数据库里添加pinglun字段,并增加内容

评论数据的添加

2-2.在app.json里增加评论的页面

"pages": [
    "pages/pinglun/pinglun",

2-3.编写pinglun.js文件

// pages/pinglun/pinglun.js
let ID = ''
let content = ''
Page({
  data: {
    pinglun: []   //评论数组
  },
  onLoad() {
    ID = 'b69f67c06268c88b005446ac66f0ad09'
    wx.cloud.database().collection('Goods')
      .doc(ID)
      .get()
      .then(res => {
        console.log('详情页成功', res)
        this.setData({
          detail: res.data,
          pinglun: res.data.pinglun
        })
      })
      .catch(res => {
        console.log('请求数据失败', res)
      })
  },
  //获取用户输入的评论内容
  getContent(e) {
    content = e.detail.value
    console.log('获取用户输入的值:', content)
  },
  //发布评论
  getgo() {
    //输入内容不能少于10位
    if (content.length < 10) {
      wx.showToast({
        icon: 'none',
        title: '内容过短!',
      })
        return
      }
      let pinglunItem = {}
      pinglunItem.name = 'catgod'      //评论者
      pinglunItem.content = content    //评论内容
      let pinglunadd = this.data.pinglun
      pinglunadd.push(pinglunItem)
      console.log('添加后的评论:',pinglunadd)
      //调用云函数进行数据的更新
      wx.cloud.callFunction({
        name: 'tubiao',
        data: {
          id: ID,
          action: "pinglun",
          pinglun: pinglunadd
        }
      }).then( res =>{
        console.log('评论发表成功',res)
        this.setData({ //数据的更新
          pinglun: pinglunadd
        })
      }).catch( res =>{
        console('评论发表失败',res)
      })
    }
})

2-4.编写pinglun.json文件

{
  "usingComponents": {},
  "navigationBarTitleText": "评论"
}

2-5.编写pinglun.wxml文件

<!--pages/pinglun/pinglun.wxml-->
<view class="tip">评论区域</view>
<block wx:for="{{pinglun}}" wx:key="index">
<view class="pinglunItem">
<view>{{item.name}}发表评论:</view>
<view>{{item.content}}</view>
</view>
</block>
<input class="input" bindinput="getContent" placeholder="请输入评论内容"> </input>
<button bindtap="getgo" type="primary">发表评论</button>

2-6.编写pinglun.wxss文件

/* pages/pinglun/pinglun.wxss */
.tip{
  margin-top: 30rpx;
  font-size: 50rpx;
  color:goldenrod;
}
.pinglunItem{
  border-bottom: 2px solid gainsboro;
  margin-left: 50rpx;
  margin-top: 30rpx;
}
.input{
  border: 1px solid gainsboro;
  margin-top: 150rpx;
  margin-bottom: 30rpx;
}

2-7.效果图(视频)

评论效果视频


主要优化如下:

1.输入内容后,输入栏清空。

2.进行友好提示如加载中…

3-1.修改pinglun.js文件

// pages/pinglun/pinglun.js
let ID = ''
Page({
  data: {
    pinglun: [],   //评论数组
    content: ''
  },
  onLoad() {
    ID = 'b69f67c06268c88b005446ac66f0ad09'
    wx.cloud.database().collection('Goods')
      .doc(ID)
      .get()
      .then(res => {
        console.log('详情页成功', res)
        this.setData({
          detail: res.data,
          pinglun: res.data.pinglun
        })
      })
      .catch(res => {
        console.log('请求数据失败', res)
      })
  },
  //获取用户输入的评论内容
  getContent(e) {
    this.setData({
      content: e.detail.value
    })
  },
  //发布评论
  getgo() {
    //输入内容不能少于10位
    let content=this.data.content
    if (content.length < 10) {
      wx.showToast({
        icon: 'none',
        title: '内容过短!',
      })
        return
      }
      let pinglunItem = {}
      pinglunItem.name = 'catgod'      //评论者
      pinglunItem.content = content    //评论内容
      let pinglunadd = this.data.pinglun
      pinglunadd.push(pinglunItem)
      console.log('添加后的评论:',pinglunadd)
      wx.showLoading({
        title:'发表中...'
      })
      //调用云函数进行数据的更新
      wx.cloud.callFunction({
        name: 'tubiao',
        data: {
          id: ID,
          action: "pinglun",
          pinglun: pinglunadd
        }
      }).then( res =>{
        console.log('评论发表成功',res)
        this.setData({
          pinglun: pinglunadd,
          content: ''
        })
        wx.hideLoading()
      }).catch( res =>{
        console.log('评论发表失败',res)
        wx.hideLoading()
      })
    }
})

3-2.修改pinglun.wxml文件

<!--pages/pinglun/pinglun.wxml-->
<view class="tip">评论区域</view>
<block wx:for="{{pinglun}}" wx:key="index">
<view class="pinglunItem">
<view>{{item.name}}发表评论:</view>
<view>{{item.content}}</view>
</view>
</block>
<input class="input" bindinput="getContent" placeholder="请输入评论内容" value="{{content}}"> </input>
<button bindtap="getgo" type="primary">发表评论</button>

3-3.效果图(视频)

评论优化效果视频

image.png

小程序-评论

云开发(微信-小程序)笔记(十七)---- cms(内容管理)及案例

感谢大家,点赞,收藏,关注,评论!

目录
相关文章
预约按摩小程序开发,为什么很多上门按摩平台根本招聘不到优秀技师?
上门按摩平台面临招不到优秀技师的问题,主要原因是平台众多,技师选择多样。为解决此问题,平台可引入技师等级制度,根据订单数量和好评率划分高、低等级技师。高等级技师可享受70%-90%的高提成及首页推荐,这不仅能激励技师的积极性,还能帮助平台筛选出优质技师,提升服务质量和口碑,形成良性循环。
|
19天前
|
人工智能 小程序
【一步步开发AI运动小程序】五、帧图像人体识别
随着AI技术的发展,阿里体育等公司推出的AI运动APP,如“乐动力”和“天天跳绳”,使云上运动会、线上健身等概念广受欢迎。本文将引导您从零开始开发一个AI运动小程序,使用“云智AI运动识别小程序插件”。文章分为四部分:初始化人体识别功能、调用人体识别功能、人体识别结果处理以及识别结果旋转矫正。下篇将继续介绍人体骨骼图绘制。
|
20天前
|
人工智能 小程序 vr&ar
AI运动小程序开发常见问题集锦二
截至当前,我们的AI运动识别小程序插件已迭代至第23个版本,广泛应用于健身、体育、体测、AR互动等场景。本文针对近期用户咨询,汇总了常见问题,帮助用户减少开发成本,提高效率。主要涵盖计时与计数模式的区别、综合排行榜生成方法、全屏模式适配及无开发能力用户的解决方案。
|
20天前
|
小程序 数据挖掘 UED
开发1个上门家政小程序APP系统,都有哪些功能?
在快节奏的现代生活中,家政服务已成为许多家庭的必需品。针对传统家政服务存在的问题,如服务质量不稳定、价格不透明等,我们历时两年开发了一套全新的上门家政系统。该系统通过完善信用体系、提供奖励机制、优化复购体验、多渠道推广和多样化盈利模式,解决了私单、复购、推广和盈利四大痛点,全面提升了服务质量和用户体验,旨在成为家政行业的领导者。
|
30天前
|
存储 传感器 小程序
跳绳计数小程序开发系统
首先,我们需要明确跳绳计数小程序的核心功能:为用户提供跳绳计数的便捷方式。这意味着小程序需要能够准确地记录用户的跳绳次数,并为用户提供清晰、直观的计数展示。
|
30天前
|
人工智能 编解码 小程序
【一步步开发AI运动小程序】四、小程序如何抽帧
随着AI技术的发展,阿里体育等公司推出的“乐动力”、“天天跳绳”等APP使云上运动会、线上健身等概念备受关注。本文将引导您从零开始开发一个AI运动小程序,利用“云智AI运动识别小程序插件”。文中详细介绍了微信小程序抽帧的相关API、设置及注意事项,帮助开发者更好地实现AI运动功能。下篇将介绍人体识别技术,敬请期待。
|
1月前
|
传感器 存储 小程序
跳绳计数小程序开发
跳绳计数小程序旨在通过智能设备(如手机或智能手表)记录用户在跳绳过程中的次数、时间、速度等关键数据,为用户提供便捷的运动记录和数据分析服务
|
30天前
|
小程序 搜索推荐 前端开发
小剧场短剧影视小程序开发
小剧场短剧影视小程序旨在为用户提供一个便捷、互动的平台,让用户能够随时随地观看、分享和评论各类小剧场短剧。通过小程序,用户可以浏览热门短剧、搜索感兴趣的内容、参与社区互动,以及享受个性化的推荐服务。
|
1月前
|
小程序 搜索推荐 前端开发
短剧小程序开发案例
首先,明确你的短剧平台的目标用户群体和他们的需求。比如,年轻用户可能更倾向于轻松、幽默的短剧内容,而家庭用户则可能更偏爱教育、亲子类的短剧。了解用户需求有助于你设计更符合他们口味的功能和界面
|
1月前
|
机器学习/深度学习 人工智能 小程序
【一步步开发AI运动小程序】三、运动识别处理流程
随着人工智能技术的发展,阿里体育等公司推出的“乐动力”、“天天跳绳”等AI运动APP备受关注。本文将引导您从零开始开发一个AI运动小程序,使用“云智AI运动识别小程序插件”。文章介绍了视频帧、帧率FPS、抽帧和人体识别等基本概念,并详细说明了处理流程,包括抽帧、人体识别检测、骨骼图绘制和运动分析等步骤。下篇将介绍如何在小程序中实现抽帧。

热门文章

最新文章