微信小程序仿朋友圈功能開發(發布、點贊、評論等功能)


微信小程序仿朋友圈功能開發(發布、點贊、評論等功能)

喜大普奔,新版本開源了,參見文章微信小程序--仿朋友圈Pro(內容發布、點贊、評論、回復評論)

1.項目分析

項目整體分為三個部分

  • 發布
  • 展示
  • 詳情頁

2.數據庫設計分析

所有表共有字段

  • create_time 記錄的創建時間
  • update_time 記錄最近的一次修改時間

動態表設計 circles_list

既然是仿朋友圈功能實現,那么數據實體必然包括 文字(主題內容) 和 圖片。

  • content

  • images

發布的信息還要攜帶上發布者的身份識別碼、昵稱 和 頭像 , 可以選擇性的帶上位置信息(不需要要進行功能拓展的話就不用加上該字段)。

  • userid

  • nickname

  • avatar

  • location

功能中存在 點贊 , 評論等功能,需要的字段有 點贊數,評論數。

  • thumbsnum
  • remarksnum

對於每一條記錄,都要設置一個主鍵,唯一識別碼 _id

  • _id

點贊表設計 thumbs_list

設計該表的主要功能是 判斷 該用戶 是否對某個動態點過贊

  • circle_id 點贊的文章id
  • userid
  • cancle true / false 用於配置多次點擊取消點贊
  • _id

評論表設置 remarks_list

  • circle_id 評論的文章id
  • userid
  • content 評論的內容
  • avatar 評論者頭像
  • nickname 評論者昵稱
  • _id

3.項目效果

使用的框架 ColorUI

按照順序展示

1.發布界面

2.展示界面

3.詳情展示頁

4.項目關鍵問題

  1. 獲取用戶信息授權

我是在點擊發布的圖片按鈕處做的處理

 <button
  open-type="getUserInfo"
  bindgetuserinfo="topub">
    <image class="add_icon" src="../../images/add.png"></image>
</button>
topub(e){
    if (e.detail.errMsg == "getUserInfo:ok") {
      console.log('獲得授權成功')
      app.globalData.userInfo = e.detail.userInfo;
      wx.setStorageSync('wxuserinfo', e.detail.userInfo)
      //console.log(e.detail.userInfo)
      wx.navigateTo({
        url: 'SocialCirclePub/SocialCirclePub',
      })
    } else {
      console.log('獲得授權失敗')
    }
    
  }
  1. 點贊評論數目增加處理

通過雲函數解決 inc 解決

// 雲函數入口文件
const cloud = require('wx-server-sdk')

cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV
})

const db = cloud.database()
const _ = db.command
exports.main = async (event, context) => {
  var opr = event.opr;
  if(opr == 'incthumb'){
    try{
      return db.collection('circles_list').doc(event.id).update({
        data:{
          thumbsnum:_.inc(1)
        }
      })
    }catch(e){
      console.error(e)
    }
  }else if (opr == 'incremark') {
    try {
      return db.collection('circles_list').doc(event.id).update({
        data: {
          remarksnum: _.inc(1)
        }
      })
    } catch (e) {
      console.error(e)
    }
  }
}

5.源碼

M朋友圈,給個star

小程序開發聯系QQ:1025584691


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM