精华内容
下载资源
问答
  • 微信小程序如何更新云数据库 通过数据的id和dpdate方法更新数据: updateData(){ db.collection("demolist").doc("28ee4e3e60eae0e5299b163c54c9d11a").update({ data:{ author:"luna" } }).then(res=>{ ...

    微信小程序如何更新云数据库

    通过数据的id和dpdate方法更新数据:

      updateData(){
        db.collection("demolist").doc("28ee4e3e60eae0e5299b163c54c9d11a").update({
          data:{
            author:"luna"
          }
        }).then(res=>{
          console.log(res)
        })
      }
    

    添加where条件一次update更新多个值:如果更新不存在的字段则为添加

      updateData(){
        db.collection("demolist").where({
          author:"luna"
        }).update({
          data:{
            author:"test where条件修改"
          }
        }).then(res=>{
          console.log(res)
        })
      
    

    使用id和set方法更新数据:数据会覆盖,如果原来有某字段但是set的data里面没有了该字段,则之前的字段会被删除,使用set更新数据,数据会完全被覆盖。

     updateData(){
        db.collection("demolist").doc("28ee4e3e60eae0e5299b163c54c9d11a").set({
          data:{
            author:"luna"
          }
        }).then(res=>{
          console.log(res)
        })
      }
    
    展开全文
  • 如图所示:我需要更新云数据库里数组指定第n项集合数据 首先绑定一下点击事件index。 接着获取到点击的index并跳转详细修改页面。 用指定的index获取数组里的数据进行渲染。 后面就是重点的函数。 我把修改的...

    如图所示:我需要更新云数据库里数组指定第n项集合数据

    在这里插入图片描述
    在这里插入图片描述

    首先绑定一下点击事件index。
    在这里插入图片描述
    接着获取到点击的index并跳转详细修改页面。
    在这里插入图片描述
    用指定的index获取数组里的数据进行渲染。
    在这里插入图片描述
    后面就是重点的云函数。
    我把修改的数据放在experience里同时我把index也上传到云函数里。

    // 云函数入口文件
    const cloud = require('wx-server-sdk')
    
    cloud.init({
      env: 'wang-6gmsl3q50a9cccd8',
    })
    const db = cloud.database()
    const _ = db.command;
    
    // 云函数入口函数
    exports.main = async (event, context) => {
      const wxContext = cloud.getWXContext()
      const openid = wxContext.OPENID     //获取的openid
      
      var experience = event.experience   //上传的修改信息
      var index = event.index        //上传的index
    
      try {
        return await db.collection('minemessage').where({
          openid:openid                //我用openid来查询指定数据
        }).update({
          data: {
            ['experience.'+[index]]:experience                    //这里就是重点看下面的解释
          }
        })
      } catch (e) {
        console.error(e);
      }
    }
    
     就是这个: ['experience.'+[index]]:experience
    
    我刚刚开始用我们最熟悉的方法experience[index],但是发现上面的index显示未引用,后来我又试过 experience.index,"experience.index"以及"experience.[index]"都没有用。最后进行拼接发现可以不报错并且也显示index引用[‘experience.’+[index]] 。

    最后就可以看到修改完成。在这里插入图片描述

    下一篇我写如何删除云数据库里数组指定第n项集合数据,毕竟有增加就有删除嘛

    展开全文
  • Collection.get / Query.get获取集合数据,或获取根据查询条件筛选后的集合数据。如果没有指定limit,则默认最多取 20 条记录。如果没有指定skip,则默认从第 0 条记录开始取,skip 常用于分页,例子可见第二个示例...

    Collection.get / Query.get

    获取集合数据,或获取根据查询条件筛选后的集合数据。

    如果没有指定 limit,则默认最多取 20 条记录。

    如果没有指定 skip,则默认从第 0 条记录开始取,skip 常用于分页,例子可见第二个示例代码。

    如果需要取集合中所有的数据,可以参考第三个示例代码

    函数签名如下:function get(): Promise

    返回值说明

    Promise 的 resolve 和 reject 的结果定义如下:结果说明resolve查询的结果,Result 定义见下方

    reject失败原因

    Result 说明

    Promise resolve 的结果 Result 是一个如下结构的对象:字段类型说明dataArray查询的结果数组,数据的每个元素是一个 Object,代表一条记录

    示例代码 1

    获取我的待办事项清单

    Promise 风格const cloud = require('wx-server-sdk')

    cloud.init()

    const db = cloud.database()

    exports.main = async (event, context) => {

    return await db.collection('todos').where({

    _openid: 'xxx' // 填入当前用户 openid

    }).get()

    }

    示例代码 2:分页取数据

    获取我的第二页的待办事项清单,假设一页 10 条,现在要取第 2 页,则可以指定 skip 10 条记录const cloud = require('wx-server-sdk')

    cloud.init()

    const db = cloud.database()

    exports.main = async (event, context) => {

    return await db.collection('todos')

    .where({

    _openid: 'xxx', // 填入当前用户 openid

    })

    .skip(10) // 跳过结果集中的前 10 条,从第 11 条开始返回

    .limit(10) // 限制返回数量为 10 条

    .get()

    }

    示例代码 3:取集合所有数据

    获取集合中的所有待办事项清单:因为有默认 limit 100 条的限制,因此很可能一个请求无法取出所有数据,需要分批次取:const cloud = require('wx-server-sdk')

    cloud.init()

    const db = cloud.database()

    const MAX_LIMIT = 100

    exports.main = async (event, context) => {

    // 先取出集合记录总数

    const countResult = await db.collection('todos').count()

    const total = countResult.total

    // 计算需分几次取

    const batchTimes = Math.ceil(total / 100)

    // 承载所有读操作的 promise 的数组

    const tasks = []

    for (let i = 0; i < batchTimes; i++) {

    const promise = db.collection('todos').skip(i * MAX_LIMIT).limit(MAX_LIMIT).get()

    tasks.push(promise)

    }

    // 等待所有

    return (await Promise.all(tasks)).reduce((acc, cur) => {

    return {

    data: acc.data.concat(cur.data),

    errMsg: acc.errMsg,

    }

    })

    }

    展开全文
  • 1.先去开发控制台创坚一个数据表和一条数据数据中num为Y轴数据,time为X轴数据 2.配置xx.json { "usingComponents": { "ec-canvas": "../../ec-canvas/ec-canvas" } } 3.在xx.wxml中引入<ec-canvas&...

    1.先去云开发控制台创建一个数据表和一条数据,数据中num为Y轴数据,time为X轴数据,都为数组

    2.配置xx.json

    {
      "usingComponents": {
        "ec-canvas": "../../ec-canvas/ec-canvas"
      }
    }

    3.在xx.wxml中引入 <ec-canvas> 组件

    <view class="content">
        <ec-canvas id="mychart" canvas-id="mychart-multi" ec="{{ ec }}"></ec-canvas>
    </view>

    4.在xx.js文件最顶部先引入import * as echarts from '../../ec-canvas/echarts';

    import * as echarts from '../../ec-canvas/echarts';

    5.设置好图表展示的样式配置

    function setOption(chart, xdata, ydata) {
      const option = {
        title: {
          text: "折线图",
          textStyle: { color: '#333', fontWeight: 'bold', fontSize: 14 }
        },
        xAxis: {
          type: 'category',
          data: xdata,      //x轴上的动态数据
        },
        yAxis: {
          type: 'value'
        },
        series: [{
          data: ydata,    //y轴上的动态数据
          type: 'line',
          color: '#ffc300'
        }]
      };
      chart.setOption(option)
    }

    6.下面有个“echarts”就是我们第一步创建的数据库表名(echarts),还设置了60s刷新数据一次,不想要也可自行删除代码。

    Page({
      data: {
        ec: {
          lazyLoad: true
        },
        timer: ''//实时刷新,所以设置了个定时器
      },
      onLoad: function (options) {
        this.getOption();
        //每隔60s刷新一次
        this.setData({                    
          timer: setInterval(()=> {
            this.getOption();
          }, 60000)
        })
      },
      onReady: function () {
        this.Component = this.selectComponent('#mychart');
      },
      onUnload: function () {
        // 清除了定时器
        clearInterval(this.data.timer)
      },
      // 初始化图表
      init_echart: function (xdata, ydata) {
        this.Component.init((canvas, width, height) => {
          const chart = echarts.init(canvas, null, {
            width: width,
            height: height
          });
          setOption(chart, xdata, ydata)
          this.chart = chart;
          return chart;
        });
      },
      // 给图表加上数据
      getOption: function () {
        let db = wx.cloud.database().collection('echarts')
        db.get().then(res => {
          console.log('获取数据成功', res);
          this.init_echart(res.data[0].time, res.data[0].num)
        })
        .catch(err => {
          console.log('获取数据失败', err);
        })
      },
    });

    7.最后就是展示。

    关注公众号:   微信小程序:

    展开全文
  • 微信小程序函数上读取数据库信息 函数: const cloud = require('wx-server-sdk') cloud.init({ //需要输入env:环境ID(要不然会默认使用第一个创建的环境) }) exports.main = async (event, context) =&...
  • 1.小程序云开发时,通过调用云函数进行更新数据记录,记录中包含时间戳(data类型)字段; 2.更新报错,经排查发现是记录中的时间戳字段(date类型)无法正常更新。若在调用云函数之前,使用delete移除时间戳字段,...
  • 1.在wxml中添加一个按钮绑定事件,添加数据 2.在数据库中新建一个数据文件夹list 3.在JS中添加数据 4.在数据库中即可有增加的数据
  • 打算纯粹的使用微信小程序云开发来做一个。这篇文章就是云数据库使用的一些总结。 刚开始看到这个云数据库的时候,第一感觉就是,这不就是MongoDB吗。 这就简单了,毕竟MongoDB我自己瞎玩的时候用的挺多的,撸起...
  • 最新更新微信 web 开发者工具支持了开发和之前免费提供的自动部署的测试环境不同,这次是生产和开发都不需要一台独立的服务器了取而代之的是文件,函数和数据库(和 Bmob 有点像)更新到最新的微信 web ...
  • 微信小程序中使用开发,首先要开通开发环境,然后创建一个User_Table表, 下面的方法是通过小程序端调用的,其实也可以通过函数进行实现 用户 数据管理类 /* 用户 数据管理类 */ /* 使用方法 : 1.在要...
  • 1.新建小程序,建立开发快速启动模板这里和普通小程序的区别有三点一是 project.config.json写上云函数所在目录"cloudfunctionRoot": "cloudfunctions/",二是app.json写上“cloud”:true三是 app.js 添加,用于...
  • 微信公众平台–小程序操作数据库–插入 (1)通过控制台:创建集合web (2)初始化默认数据库 const db = wx.cloud....微信公众平台–小程序操作数据库–更新 db.collection("集合名称").doc("当前记录id").upd
  • 今天我们就一起来探讨微信云数据库的数据删除。 修改操作和之前讲的那几种操作稍微有些不同。因为删除是根据在数据库里的id进行删除操作的。如下图 所以要让服务器知道你要删哪一条数据,就必须把相关数据的id传...
  • 微信小程序利用开发实现评论功能 如果喜欢可以给我一个关注。 一.微信小程序,评论功能的实现。 首先我们先布局,一个文章或者是商品,底下是评论, <!-- 商品详情 --> <view> <view class="store...
  • 小程序代码中无法直接修改他人创建的数据记录例如:数据库表中的_openid字段是自动生成的,哪个用户创建的记录这个openid就是用户的openid,数据库的权限分配也是根据openid来进行的。解决方案:第一步:创建...
  • //获取需要更新数据的id updateId(event){ console.log(event.detail.value) delId = event.detail.value }, //获取用户要更新的名字 updateName(event){ name = event.detail.value }, //获取用户要更新的年龄 upd
  • 一开始初始化的界面 // 函数入口文件 ...使用 tcb-router + request-promise 将数据请求转换为 async,await 风格。 // 函数入口文件 const cloud = require('wx-server-sdk') const TcbRoute
  • 文章目录17、往数据库中插入数据的几种方式1、图形化方式插入数据2、手动操作插入数据3、云端插入数据18、获取数据1、获取单条数据2、获取多条数据 17、往数据库中插入数据的几种方式 1、图形化方式插入数据 打开...
  • //现在本文件下打开内置终端安装 npm install --save , 再安装 npm install --savewx-server-sdk...//自己的开发中的环境 env:'cloud1-xxxxxxxxx' }) //获取数据库对象 constdb=cloud.database() constuser...
  • 因为是学生党,而且并没有很大的需要,所以选择了微信小程序为开发者提供的“开发”选项。开发者可以使用开发开发微信小程序、小游戏,无需搭建服务器,即可使用云端能力。按照微信的说法:开发为开发者提供...
  • 一、函数获取数据 1.在函数入口index.js 文件中编辑如下代码,“cloudDatabase”为数据库名 // 函数入口文件 const cloud = require('wx-server-sdk') cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) ...
  • 至于如何云开发我就不在这里赘述了,请移步微信小程序云开发官方文档,说的很清楚。这篇文章主要跟大家聊一次云开发上传json文件遇到的坑。小程序官方为我们提供了官方API进行数据库操作上传数据,也为我们提供了...
  • 微信小程序调用update更新数据库数据无效。 原因:没用使用openid进行数据查询,系统认为你不是创建者,就没有权限更新数据。 解决方法:查询是带上openid进行查询, var openid = wx.getStorageSync('openid') ...
  • 微信小程序·开发初体验简介:2018年9月份微信正式推出开发平台,一石激起千层浪,什么是开发?是不是以后就可以和后端研发说拜拜了?是不是未来前端研发就可以一统微信小程序了?想想还有点小激动了呢!2018...
  • 删除数据 // pages/shujuku/shujuku.js Page({ data:{ good:[] }, onLoad() { console.log('启动啦') wx.cloud.init({ env:'caull-5ghh6arc9f0f6913' }) }, remove(){ wx.cloud.database()....
  • 首先需要进行环境初始化 环境初始化操作流程可查看前一篇文章 https://editor.csdn.net/md/?articleId=113482034 随后,要通过开发模式实现注册或登录功能有两种方法 <form>表单绑定事件进行处理 几...
  • 微信小程序的请求数据方式 小程序端 函数 发送方法 wx.request({}) 下载第三方ajax库(request) 协议支持 只支持https 根据第三方库决定 是否备案 经过ICP备案 可以不备案 域名个数 20个 无限制 ...
  • 在使用微信小程序云开发时,发现使用"update"修改不了"后台手动添加的数据",只能修改"从前端界面添加进后台数据库的数据",数据修改前如下图所示: 1. 后台手动添加的数据 : 2. 前端界面添加进后台数据库的数据 : ...
  • 在服务器新建listimage.png5云服务端clouefunctions右键下新建nide.js函数,写上文件名,image.png在这里我命名为chaxunimage.png6在chaxun文件下的index.js中// 函数入口文件const cloud = ...
  • 微信小程序 - 开发

    2021-08-19 11:34:49
    参考文档:微信小程序云开发 一、云开发介绍 1、简介 小程序·云开发是微信团队联合腾讯云推出的专业的小程序开发服务。 开发者可以使用云开发快速开发小程序、小游戏、公众号网页等,并且原生打通微信开放能力

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 42,436
精华内容 16,974
关键字:

微信小程序更新云数据

微信小程序 订阅