一、在Page文件夹下创建一个新页面

1.创建的新页面叫“database”
在这里插入图片描述
2.编辑 “database.js ”,如下图:
在这里插入图片描述

二、查询数据库(写onLoad函数)

此处有两种写法,注意辨析!

  • 第一种,传统写法:

在这里插入图片描述
代码:

 onLoad(){
    //固定写法,用于获取当前数据库中goods这个表的实例对象
    wx.cloud.database().collection('goods')
    //查询操作
    .get({
      //请求成功
      success(res){
        console.log('请求成功',res)
      },
      //请求失败
      fail(err){
        console.log('请求失败',err)
      }
    })
  • 第二种,ES6简洁写法(推荐此种写法)

在这里插入图片描述
代码:

 onLoad(){
 	//用于获取当前数据库中goods这个表的实例对象,注意后面的.get()!!!
	 wx.cloud.database().collection('goods').get()
	 //请求成功
	 .then(res =>{
	   console.log('第二种方法请求成功',res)
	  })
	  //请求失败
	 .catch(err =>{
	     console.log('第二种方法请求失败',err)
	  })
  }

接下来使用上述查询方法将数据库中的数据显示到屏幕上

1.编写database.wxml,使用wx:for遍历 list数组
在这里插入图片描述
2.编写database.js ,采用ES6简洁写法 ☆☆☆
在这里插入图片描述

注意!

  • data中的list数组无需赋值,此时若手动赋值相当于写死,不是从数据库中动态得到的数据
  • ②中的this作用域为整个Page
    即Page中所有的数据this都可以访问到

    因此我们可以在setData中设置"data中list数组的数据"

3.此时编译后即可查看到数据库中的数据
在这里插入图片描述


代码一:

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

代码二:

Page({
  data:{
    list:[ ]
  },
  onLoad(){
    //ES6简洁写法(推荐此种写法)
    wx.cloud.database().collection('goods').get()
    //查询操作
  .then(res =>{
    console.log('第二种方法请求成功',res.data)
    this.setData({
      //动态的将数据库中的数据存放到list数组中
      list:res.data
    })
  })
  .catch(err =>{
    console.log('第二种方法请求失败',err)
  })
  }
})

三、条件查询where()

wx.cloud.database().collection('goods').get()之间
添加 .where() 来实现条件查询

wx.cloud.database().collection('goods').where({
//里面写条件
}).get()

(goods为数据库中一个表名)

示例:
在这里插入图片描述
结果:
在这里插入图片描述


四、查询单条数据doc()

wx.cloud.database().collection('goods').get()之间
添加 .doc() 来实现条件查询

wx.cloud.database().collection('goods')
.doc('//里面写云数据库中数据的id').get()

(goods为数据库中一个表名)

示例:
在这里插入图片描述
注意,doc()中存放的数据是其在云数据库中的id
在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐