项目作者: Mihawk-zhao

项目描述 :
统一各类[数据库]和[后台云服务]接口的 JavaScript 库
高级语言: TypeScript
项目地址: git://github.com/Mihawk-zhao/minapp-fetch.git
创建时间: 2019-07-19T01:49:27Z
项目社区:https://github.com/Mihawk-zhao/minapp-fetch

开源协议:MIT License

下载


统一各类[数据库]和[后台云服务]接口的 JavaScript 库

目前支持的后台服务和数据库有:

  1. 知晓云:运营后台、云函数、小程序、webapi等
  2. 微信小程序云开发:微信小程序、云函数
  3. uniCloud:阿里云、腾讯云
  4. MongoDB数据库:Nodejs
  5. Mysql数据库:Nodejs

使用:

  1. //app.js
  2. import minapp from 'minapp-fetch'
  3. ...
  4. onLaunch: function() {
  5. minapp.init('zx_weapp')
  6. }
  7. //somePage.js 使用
  8. import minapp from 'minapp-fetch'
  9. minapp.find('tableName', {
  10. p0: ['num', '=', 0],
  11. r: 'p0'
  12. }).then(res => {
  13. }, err => {})

优点

  1. 跨平台性:各服务平台写法一致,一处写,处处用
  2. 调用简单:简化官方复杂的概念,查错、修改更加方便
  3. 易迁移性:可以很方便的把一个平台的项目迁移到其他平台
  4. 代码提示:支持代码提示,可直接引入定义的类型

下面就以知晓云平台的最简单的and、or复杂组合查寻为例:

  1. /** 原方法 **/
  2. let query1 = new wx.BaaS.Query()
  3. query1.in('color', ['green', 'red', 'yellow'])
  4. let query2 = new wx.BaaS.Query()
  5. query2.compare('price', '>', 10)
  6. let andQuery = wx.BaaS.Query.and(query1, query2)
  7. let query3 = new wx.BaaS.Query()
  8. query3.compare('amount', '>=', 3)
  9. let orQuery = wx.BaaS.Query.or(andQuery, query3)
  10. let Product = new wx.BaaS.TableObject(tableName)
  11. Product.setQuery(orQuery).find().then(res => {
  12. // success
  13. })
  14. /** minapp-fetch 其他各个平台写法都如下 **/
  15. minapp.find(tableName, {
  16. p1: ['color', 'in', ['green', 'red', 'yellow']],
  17. p2: ['price', '>', 10],
  18. p3: ['amount', '>=', 3],
  19. r: '(p1 && p2) || p3'
  20. }).then(res => {
  21. // success
  22. })