• 小程序-浅谈云函数获取数据和云数据库api获取数据的区别


    区别:在于条数的限制,云数据库api获取数据限制20条以内,云函数限制100条以内

    index.wxml

    <button bindtap="shujukuget">数据库api获取数据</button>
    <button bindtap="yunhanshuget">云函数获取数据</button>
    

    数据库api获取数据(index.js)

    //获取应用实例
    Page({
        //数据库api获取数据
        shujukuget() {
            wx.cloud.database().collection("users").get({
                //查询数据
                success(res) {
                    console.log("查询数据成功", res);
                },
                fail(err) {
                    console.log("查询数据成功", err);
                }
            })
        },
        //云函数获取数据,不受权限限制
        yunhanshuget() {
            wx.cloud.callFunction({
                //调用的函数名字
                name: "getdata",
                success(res) {
                    console.log("云函数获取数据库成功", res);
                },
                fail(err) {
                    console.log("云函数获取数据库失败", err);
                }
            })
        }
    })
    

    云函数获取数据(getdata.js)

    // 云函数入口文件
    const cloud = require('wx-server-sdk')
    
    cloud.init()
    
    // 云函数入口函数
    exports.main = async (event, context) => {
        return cloud.database().collection("users").get();
    }
    

    数据库api获取数据

    index2.wxml

    <button bindtap="getData">获取云数据库数据</button>
    <view wx:for="{{datalist}}">
        <view class="itemRoot">
            <view>{{item.name}}</view>
            <view>{{item._id}}</view>
            <view>{{item.addr}}</view>
        </view>
    </view>
    

    index2.js

    Page({
        data:{
            datalist:[]
        },
        
        //获取云数据库数据
        getData() {
            let that=this;
            wx.cloud.database().collection("userList").get({
                success(res) {
                    console.log("获取数据库成功", res);
                    that.setData({
                    datalist:res.data
                    })
                },
                fail(err) {
                    console.log("获取数据库失败", err);
                }
            })
        }
    })
    

    效果展示

    thisisimage

    云函数获取数据

    index3.wxml

    <button bindtap="getData">通过云函数获取数据</button>
    <view wx:for="{{datalist}}" wx:key="item">
        <view class="itemRoot">
            <view>{{item.name}}</view>
            <view>{{item._id}}</view>
            <view>{{item.addr}}</view>
        </view>
    </view>
    

    index3.js

    Page({
        data:{
            datalist:[]
        },
        
        //获取云数据库数据
        getData() {
            let that=this;
            wx.cloud.callFunction({
                name:"getList",
                success(res) {
                    console.log("请求云函数成功", res);
                    that.setData({
                    datalist:res.result.data
                    })
                },
                fail(err) {
                    console.log("请求云函数失败", err);
                }
            })
        }
    })
    

    云函数getList.js

    // 云函数入口文件
    const cloud = require('wx-server-sdk')
    
    cloud.init({
        env:"myminiprogram-xdqs5"
    })
    
    // 云函数入口函数
    exports.main = async (event, context) => {
        let result=cloud.database().collection("userList").get({
            success:res=>{
            return res
            },
            fail:err=>{
            return err
            }
        })
        return result
    }
    

    效果展示

    thisisimage

  • 相关阅读:
    【方法1】删除Map中Value反复的记录,而且仅仅保留Key最小的那条记录
    hdu3415 Max Sum of Max-K-sub-sequence 单调队列
    HBase总结(十八)Hbase rowkey设计一
    Makefile生成器,使用C++和Boost实现
    quartz cron表达式在线生成
    NS3网络仿真(6): 总线型网络
    连载:面向对象葵花宝典:思想、技巧与实践(35)
    zoj 2921 Stock(贪心)
    11g RAC 加节点 之 手动加入vip 资源
    [Unity3D]Unity+Android交互教程——让手机&quot;动&quot;起来
  • 原文地址:https://www.cnblogs.com/dongxuelove/p/13059830.html
Copyright © 2020-2023  润新知