HotApp云笔记

HotApp云笔记是基于微信小程序和HotApp云后台API开发的笔记应用,具备离线保存、云端同步和数据统计功能。通过key-value接口实现数据存储,利用版本号和状态字段解决数据同步问题,确保多设备间的笔记一致性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一, 介绍

HotApp云笔记是基于HotApp小程序统计云后台提供的api接口开发的一个微信小程序
功能有: 离线保存笔记、云端数据同步、数据统计分析
项目地址: https://github.com/hotapp888/hotapp-notepad
截图如下:
1
2
这里写图片描述
这里写图片描述

二, 功能分析

  • 需要数据库
    对于一个功能非常简单的小程序来说, 自己去开发一套后台需要话费蛮多时间和精力的, 而且很多小程序开发者不会写后台.
    hotapp 提供了key-value形式的免费接口, 支持get, post, delete和searchkey, 使用起来非常简单, 对于一个简单的笔记本来说完全够用了!

  • 需要云同步
    在离线情况下可以写笔记, 这些笔记应该保存到本地缓存中. 在有网络的时候, 需要把本地的数据上传到hotapp 云后台, 在更换设备之后, 还可以从hotapp 云后台把数据同步到新设备. 在新设备上新增笔记、修改笔记和删除笔记之后, 也可以及时同步到旧设备上

  • 需要数据统计
    需要知道每日新增用户, 活跃用户, 启动次数, 用户留存率, 增删改笔记的次数等. hotapp 提供了这些免费的接口, 一行代码就接入进去后就可以知道这些数据

三, 技术实现细节

1, key-value的设计

hotapp云笔记有两种数据类型: 笔记反馈
对于笔记, 我设置的key是item_openid_rand, 对于反馈, 我设置的key是feedback_openid_rand
这样设计的好处是: 看到item就知道是笔记, 看到feedback就知道是反馈, 如果需要知道是哪个用户的笔记, 就查找item_openid_开头的key就可以了
hotapp云笔记 提供了这些接口, 让我实现起来非常地方便.

  • 获取用户所有的笔记

    /**
    * 获取所有数据
    */
    getItems: function(cb) {
         
         
      var that = this;
      // 首先从缓存中获取, 如果缓存中有就直接返回
      var items = wx.getStorageSync('items');
      if (items) {
          return typeof cb == 'function' && cb(items);
      } else {
        // 如果缓存中没有, 就通过hotapp.searchkey去云后台获取
          var filters = {
              prefix: hotapp.getPrefix('item'),
              pageSize: -1   // -1表示不需要分页, 一次性获取所有的数据
          };
    
          hotapp.searchkey(filters, function(res) {
         
         
              if (res.ret == 0) {
                  res.data.items.forEach(function(item) {
         
         
                      // 把获取的数据格式稍作处理, 以便在前端显示
                      item = that.formatItem(item);   
                      // state: 1表示未同步, 2表示已同步, 3表示本地已删除.
                      // 数据同步的内容在下面介绍
                      item.state = 2;      
                  });
                // 为了提高速度, 把数据都存入缓存, 下次取的时候就直接从缓存中获取而不需要从云后台获取
                  wx.setStorageSync('items', res.data.items);  
                  return typeof cb == 'function' && cb(res.data.items);
              } else {
                  return typeof cb == 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值