小程序云开发(上)

小程序云开发官方文档

数据库的增删改查

// app.js
App({
  // 小程序已启动就会执行
  onLaunch() {
    wx.cloud.init({
      env: 'yunkaifa-9gjrckmo794e04e8' //云开发环境Id
    })
  }
})

创建一个商品数据表并添加数据

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

使用get方法请求数据库里的数据

修改数据表的读写权限

shujuku.js

Page({
    onLoad() {
        // 传统的固定写法
        wx.cloud.database().collection('goods')
            // 查询操作
          .get({
            // 请求成功
            success(res) {
                console.log('请求成功', res)
            },
            // 请求失败
            fail(err) {
                console.log('请求失败', err)
            }     
          })  
    }
})

使用get方法请求数据库里的数据(es6简洁写法)

shujuku.js

Page({
    onLoad() {
        // es6的简洁写法
        wx.cloud.database().collection('goods').get()
        .then(res => {  // 请求成功
            console.log('《请求成功', res)
        })
        .catch(err => {   // 请求失败
            console.log('《请求失败', err)
        })
    }
})

把请求到的数据显示到小程序页面

shujuku.wxml

<view wx:for="{{list}}">
    <view>商品名: {{item.name}}, 价格: {{item.price}}</view>
</view>

shujuku.js

Page({
    data: {
        list: []
    },
    onLoad() {
        // es6的简洁写法
        wx.cloud.database().collection('goods').get()
        .then(res => {  // 请求成功
            console.log('《请求成功', res.data)
            // 动态请求
            this.setData({
                list: res.data
            })
        })
        .catch(err => {   // 请求失败
            console.log('《请求失败', err)
        })
    }
})

shujuku.js

Page({
    data: {
        list: []
    },
    onLoad() {
        console.log('onload里的this', this)
        let that = this
        // 传统的固定写法
        wx.cloud.database().collection('goods')
            // 查询操作
          .get({
            // 请求成功
            success(res) {
                console.log('请求成功', res)
                that.setData({
                    list: res.data
                })
            },
            // 请求失败
            fail(err) {
                console.log('请求失败', err)
            }     
          })
    }
})

使用where查询符合条件的数据

Page({
    data: {
        list: []
    },
    onLoad() {     
        // es6的简洁写法
        wx.cloud.database().collection('goods')
        .where({
            name: '苹果' 
        })
        .get()
        .then(res => { 
            this.setData({
                list: res.data
            })
        })
        .catch(err => {   // 请求失败
            console.log('《请求失败', err)
        })
    }
})

查询单条数据doc()

doc是用来查询单条数据的,比如,商品详情页

shujuku.js

Page({
    data: {
        list: [],
        good: {}
    },
    onLoad() {     
        wx.cloud.database().collection('goods').get()
        .then(res => {  
            console.log('请求成功', res.data)
            this.setData({
                list: res.data
            })
        })
        .catch(err => {   
            console.log('请求失败', err)
        })
        // 使用doc查询单条数据
        wx.cloud.database().collection('goods')
            .doc('2c9907ee625a2cf3002edf1c44cc9425')
            .get()
            .then(res => { 
                console.log('查询单条数据成功', res.data)
                this.setData({
                    good: res.data
                })
            })
            .catch(err => {  
                console.log('查询单条数据失败', err)
            })
    }
})

shujuku.wxml

<view wx:for="{{list}}">
    <view>商品名: {{item.name}}, 价格: {{item.price}}</view>
</view>
<view>
doc查询的单条数据:{{good.name}},价格:{{good.price}}
</view>

在这里插入图片描述

通过add方法添加新数据

add.js

Page({
    onLoad() {
        
    },
    // 添加数据
    add() {
        wx.cloud.database().collection('goods')
        // 添加数据
        .add({
            data: {
                name: '车厘子',
                price: '200'
            }
        })
        .then(res=>{
            console.log('添加成功', res)
        })
        .catch(err=>{
            console.log('添加失败', err)
        })
    }
})

add.wxml

<!--pages/add/add.wxml-->
<button bindtap="add">点击添加按钮</button>

更新数据update()

修改数据库里已存在的数据

add.wxml

<!--pages/add/add.wxml-->
<button bindtap="add">点击添加按钮</button>
<button bindtap="update">修改数据</button>

add.js

Page({
    onLoad() {
        
    },
    // 添加数据
    add() {
        wx.cloud.database().collection('goods')
            // 添加数据
            .add({
                data: {
                    name: '车厘子',
                    price: '200'
                }
            })
            .then(res=>{
                console.log('添加成功', res)
            })
            .catch(err=>{
                console.log('添加失败', err)
            })
    },
    update() {
        wx.cloud.database().collection('goods')
            .doc('1fee1e97625a32320032242577a0aea6')
            .update({
                data: {
                    price: '100'
                }
            })
            .then(res=>{
                console.log('修改成功', res)
            })
            .catch(err=>{
                console.log('修改失败', err)
            })
    }
})

在这里插入图片描述

删除数据remove()

add.wxml

<!--pages/add/add.wxml-->
<button bindtap="add">点击添加按钮</button>
<button bindtap="update">修改数据</button>
<button bindtap="remove">删除单条数据</button>

add.js

Page({
    onLoad() {
        
    },
    // 添加数据
    add() {
        wx.cloud.database().collection('goods')
            // 添加数据
            .add({
                data: {
                    name: '车厘子',
                    price: '200'
                }
            })
            .then(res=>{
                console.log('添加成功', res)
            })
            .catch(err=>{
                console.log('添加失败', err)
            })
    },
    update() {
        wx.cloud.database().collection('goods')
            .doc('1fee1e97625a32320032242577a0aea6')
            .update({
                data: {
                    price: '100'
                }
            })
            .then(res=>{
                console.log('修改成功', res)
            })
            .catch(err=>{
                console.log('修改失败', err)
            })
    },
    remove() {
        wx.cloud.database().collection('goods')
            .doc('1fee1e97625a32320032242577a0aea6')
            .remove()
            .then(res=>{
                console.log('删除成功', res)
            })
            .catch(err=>{
                console.log('删除失败', err)
            })
    }
})

增删改查综合案例

  1. 查看商品列表
  2. 动态添加商品
  3. 进入商品详情页
  4. 删除某个商品
  5. 修改某个商品价格

修改页面标题

在这里插入图片描述

demo1.json

{
  "usingComponents": {},
  "navigationBarTitleText": "商品列表页"
}

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

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不能say的秘密

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值