小程序云开发实现数据库异步操作同步化

 更新时间:2019年05月18日 10:21:28   作者:幸运人1  
这篇文章主要为大家详细介绍了小程序云开发实现数据库异步操作同步化,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

写小程序云函数的时候遇到了一个问题,如果只对数据库操作一次的话,可以按照官方样例放到return里面,但是如果需要对数据库进行多次操作的话就不能这样写了,因为对数据库的操作是异步执行的。

刚开始我也想了好长时间,最后才找到解决的办法,就是用promise将异步操作同步化(后来才看到,官网也有)。

下面是我写的一个简单的注册云函数

// 云函数入口文件
const cloud = require('wx-server-sdk')
 
cloud.init()
const db = cloud.database()
const _ = db.command
const result={
 code:'',
 body:''
}
// 云函数入口函数
exports.main = (event, context) => {
 return new Promise((resolve, reject) => {
  db.collection('fan_user').where({
   tel:_.eq(event.tel)
  }).get().then((res)=>{
    if(res.data.length){ //用户已注册
     result.code=400;
     result.body='该账户已注册';
     resolve(result)
    }else{ //用户未注册
      db.collection('fan_user').add({
       data:{
        tel:event.tel,
        password:event.password
       }
      }).then((res)=>{
       result.code=200;
       result.body=res;
       resolve(result)
      })
    }
  })
 })
 
}

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

相关文章

  • filemanage功能中用到的lib.js

    filemanage功能中用到的lib.js

    filemanage功能中用到的lib.js...
    2007-04-04
  • 文本框回车提交与禁止提交示例

    文本框回车提交与禁止提交示例

    文本框输入数据后使用回车进行提交,想必大家都尝试过吧,在本文有个不错的示例,喜欢的朋友可以参下
    2013-09-09
  • webpack打包主要流程以及优化

    webpack打包主要流程以及优化

    这篇文章主要介绍了Webpack是一个强大的前端构建工具,通过配置文件和一系列的插件和加载器,它可以将项目中的模块打包成适合生产环境的文件,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-01-01
  • js百度地图滚轮缩放所在点偏移问题解决

    js百度地图滚轮缩放所在点偏移问题解决

    本文主要介绍了js百度地图滚轮缩放所在点偏移问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • 如何用原生js写一个弹窗消息提醒插件

    如何用原生js写一个弹窗消息提醒插件

    这篇文章主要介绍了用原生js写一个弹窗消息提醒插件,下面小编来和大家一起学习一下
    2019-05-05
  • Kimi模型调用联动前端简单交互页面实现方法

    Kimi模型调用联动前端简单交互页面实现方法

    这篇文章主要介绍了如何使用Flask搭建一个简单的AI聊天应用,并通过OpenAI API实现对话功能,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-02-02
  • JavaScript代码应该放在HTML代码哪个位置比较好?

    JavaScript代码应该放在HTML代码哪个位置比较好?

    这篇文章主要介绍了JavaScript代码应该放在HTML代码哪个位置比较好?本文总结了多种放置JS代码的方法,需要的朋友可以参考下
    2014-10-10
  • 一个JavaScript操作元素定位元素的实例

    一个JavaScript操作元素定位元素的实例

    操作元素定位元素,大家会想到使用js来实现,下面有个不错的示例,大家可以看看
    2014-10-10
  • 详解JS内存空间

    详解JS内存空间

    因为JavaScript具有自动垃圾回收机制,所以对于前端开发来说,内存空间并不是一个经常被提及的概念。特别是很多不是计算机专业的朋友在进入到前端之后,会对内存空间的认知比较模糊,甚至有些人干脆就是一无所知。为了解决大家的疑惑,本文将详细介绍JS内存空间
    2021-06-06
  • js实现扫雷源代码

    js实现扫雷源代码

    这篇文章主要为大家详细介绍了js实现扫雷源代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11

最新评论