微信小程序(八)-项目实例(原生框架 MINA转云开发)==03-云开发-数据库
云数据库
云数据库开发文档:https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/database.html
1.新建云数据库(小程序中叫集合名,以前叫表名,轮播图表)

2.在数据表中加入数据
1.新建一个excel.csv文件(indexLBT.csv)
2.表中新建两个字段(lbtID,src)
3.将数据填在表中保存(先要将图片上传到云存储中)


4.导入文件 indexLBT.csv 到数据库中


3.初始化(哪个组件中要用数据库的数据就在哪个组件js文件中引用)
https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/database/init.html

Page({
onLoad() {
// 初始化云数据库(1-2步固定写法)
// 1.获取当前云环境下(env:"wcg-8gmhce8s0001d52f")的数据库的引用
const DB = wx.cloud.database()
// 2.获取集合(数据库表名users)的引用
const lunbotu = DB.collection("index-lunbotu")
// 使用数据(1.查询: get )
lunbotu.get({
// 请求成功
success(res){
console.log(res)
},
// 请求失败
fail(err){
console.log(err)
}
})
}
})
index.js

4.使用数据(要注意数据的权限,不然查询不到数据)
1.查询 .get() https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/database/read.html
1.传统写法:

Page({
onLoad() {
// 初始化云数据库(1-2步固定写法)
// 1.获取当前云环境下(env:"wcg-8gmhce8s0001d52f")的数据库的引用
const DB = wx.cloud.database()
// 2.获取集合(数据库表名users)的引用
const lunbotu = DB.collection("index-lunbotu")
// 使用数据(1.查询: get )
lunbotu.get({
// 请求成功
success(res){
console.log(res)
},
// 请求失败
fail(err){
console.log(err)
}
})
}
})
index.js
2.ES6的简洁写法(箭头函数):

Page({
onLoad() {
// 初始化云数据库(1-2步固定写法)
// 1.获取当前云环境下(env:"wcg-8gmhce8s0001d52f")的数据库的引用
const DB = wx.cloud.database()
// 2.获取集合(数据库表名users)的引用
const lunbotu = DB.collection("index-lunbotu")
// 3.使用数据(1.查询: get )
// 3.1 传统写法
// lunbotu.get({
// // 请求成功
// success(res){
// console.log(res)
// },
// // 请求失败
// fail(err){
// console.log(err)
// }
// })
// 3.2 ES6简洁写法(箭头函数)
lunbotu.get()
// 请求成功
.then(res=>{
console.log(res)
})
// 请求失败
.catch(err=>{
console.log(err)
})
}
})
index.js

这样有可能就查询不到数据

修改权限后查询就有


3.展示数据(轮播图)

Page({
data: {
lunbotu: []
},
onLoad() {
// 初始化云数据库(1-2步固定写法)
// 1.获取当前云环境下(env:"wcg-8gmhce8s0001d52f")的数据库的引用
const DB = wx.cloud.database()
// 2.获取集合(数据库表名users)的引用
const lunbotu = DB.collection("index-lunbotu")
// 3.使用数据(1.查询: get )
lunbotu.get()
// 请求成功,将数据赋值给 lunbotu 在页面展示
.then(res => {
this.setData({
lunbotu: res.data
})
})
// 请求失败
.catch(err => {
console.log("数据请求失败!")
})
}
})
index.js

<view class="index_swiper">
<!--
1 swiper标签存在默认的宽度和高度 100%*150px
1 如果不改变swiper标签的默认尺寸,哪图片尺寸最好750px*150px
2 如果图片不是750*150尺寸,就得根据图片的高度调整swiper标签的高度(swiper标签高=图片高)
2 image标签默认宽度和高度 320px*240px
1.图片是放到swiper标签中的,哪么图片是默认尺寸,哪放到swiper标签中就是宽度 320px(100%)*150px
2.要将图片放到swiper标签中装满并且不变形,就得调整图片的宽度为100%,图片高度自适应(mode="widthFix")
3 图片标签 mode属性渲染模式
1.widthFix 缩放模式,宽度不变,高度自动变化,保持原图宽高比不变
2.widthFix 让图片标签宽高和图片标签内容的宽高都等比例的发生变化
4 例:实际图片宽高为 750*268 (图片宽度最好是750px)
1.先设图片属性 mode="widthFix"
2.swiper标签高设 height: 268rpx;(图片的高度)
3.image 标签宽设 width: 100%;
-->
<swiper autoplay circular interval="5000" indicator-dots indicator-active-color="red" indicator-color="#0094ff">
<swiper-item wx:for="{{lunbotu}}" wx:key="lbtID">
<image mode="widthFix" src="{{item.src}}" />
</swiper-item>
</swiper>
</view>
index.wxml
4 条件查询 .where({})

5.查询单条数据 .doc("_id") 返回是一个对象{},展示值时按对象值展示,中间参数是对应的数据库自动生成的_id

6.获取指定数据数量 .limit()

2.增加数据 .add({data:{对应的字段}})
https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/database/add.html
3.修改数据 .update({data:{对应的字段}})
https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/database/update.html
4.删除单条数据 .remove()
https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/database/remove.html
99.
微信小程序(八)-项目实例(原生框架 MINA转云开发)==03-云开发-数据库的更多相关文章
- 微信小程序(七)-项目实例(原生框架 MINA转云开发)==02-云开发-配置
云开发:1.就是用云函数的型式来使用云存储和云数据库完成各种操作! 2.只关注调什么函数,完成什么功能即可,无需关心HTTP请求哪一套! 3.此模式不代表没有服务器,只是部署在云环境中 ...
- 微信小程序(六)-项目实例(原生框架 MINA基配搭建)==01-头搜索框tabbar
项目实例(原生框架 MINA) 1.新建小程序项目 1.用自已的小程序APPID 2.清除整理项目中初建默认无关的代码 1.app.json 中删除logs,同时删除pages下的losgs文件夹 2 ...
- 小程序-文章:微信小程序常见的UI框架/组件库总结
ylbtech-小程序-文章:微信小程序常见的UI框架/组件库总结 1.返回顶部 1. 想要开发出一套高质量的小程序,运用框架,组件库是省时省力省心必不可少一部分,随着小程序日渐火爆,各种不同类型的小 ...
- 像VUE一样写微信小程序-深入研究wepy框架
像VUE一样写微信小程序-深入研究wepy框架 微信小程序自发布到如今已经有半年多的时间了,凭借微信平台的强大影响力,越来越多企业加入小程序开发. 小程序于M页比相比,有以下优势: 1.小程序拥有更多 ...
- 微信小程序常见的UI框架/组件库总结
想要开发出一套高质量的小程序,运用框架,组件库是省时省力省心必不可少一部分,随着小程序日渐火爆,各种不同类型的小程序也渐渐更新,其中不乏一些优秀好用的框架/组件库. 1:WeUI 小程序–使用教程 h ...
- 天河微信小程序入门《四》:融会贯通,form表单提交数据库
天河在阔别了十几天之后终于又回来了.其实这篇文章里的demo是接着(天河微信小程序入门<三>)后面就做了的,但是因为最近在做别的项目,所以就偷懒没有发出来.放到今天来看,从前台提交数据到数 ...
- 微信小程序之:wepy框架
1.介绍 WePY 是 腾讯 参考了Vue 等框架对原生小程序进行再次封装的框架,更贴近于 MVVM 架构模式, 并支持ES6/7的一些新特性. 2.使用 npm install -g wepy-cl ...
- 微信小程序(二)框架的基本组成
安装好 微信web开发者工具后. 让我们来了解一下工具的框架,上图: 工具总共分为三个部分,左上角红框框: 模拟器:模拟手机小程序界面,模拟器左上角可以选择手机型号,右上角红框处,千万别选成Offic ...
- 微信小程序踩坑日记4——真机端解析json数组和开发平台不一样
0. 引言 环境:访问服务器端php,获取json数组,并渲染在前台 问题描述:保证在开发平台上的正常运行,但是在真机端却出现了无法正确解析wx.request()返回的数据(特指无法解析res.da ...
随机推荐
- Python基础随笔①(MOOC)
@ 目录 前言 概述 主体 1.基本语法元素 ①实例:温度转换 要求 分析 代码部分 运行结果 ②作业:Hello World的条件输出 要求 分析 代码 运行结果 ③作业:数值运算 要求 分析 代码 ...
- B 明码
B 明码 :汉字的字形存在于字库中,即便在今天,16点阵的字库也仍然使用广泛. 16点阵的字库把每个汉字看成是16x16个像素信息.并把这些信息记录在字节中. 一个字节可以存储8位信息,用32个字节就 ...
- Codeforces Round #652 (Div. 2) B. AccurateLee(字符串)
题目链接:https://codeforces.com/contest/1369/problem/B 题意 给出一个长 $n$ 的 二进制串,每次可以选择字符串中的一个 $10$,然后删除其中的一个字 ...
- 【noi 2.6_9290】&【poj 2680】Computer Transformation(DP+高精度+重载运算符)
题意:给一个初始值1,每步操作将1替换为01,将0替换为10.问N步操作后有多少对连续的0. 解法:f[i]表示第i步后的答案.可以直接打表发现规律--奇数步后,f[i]=f[i-1]*2-1;偶数步 ...
- Medium Free
fetch(window.location.href,{credentials:"omit",redirect:"follow",mode:"no-c ...
- 搭建基于springboot轻量级读写分离开发框架
何为读写分离 读写分离是指对资源的修改和读取进行分离,能解决很多数据库瓶颈,以及代码混乱难以维护等相关的问题,使系统有更好的扩展性,维护性和可用性. 一般会分三个步骤来实现: 一. 主从数据库搭建 信 ...
- woj1013 Barcelet 字符串 woj1014 Doraemon's Flashlight 几何
title: woj1013 Barcelet 字符串 date: 2020-03-18 18:00:00 categories: acm tags: [acm,字符串,woj] 字符串,字典序. 1 ...
- Leetcode(14)-最长公共前缀
编写一个函数来查找字符串数组中的最长公共前缀. 如果不存在公共前缀,返回空字符串 "". 示例 1: 输入: ["flower","flow" ...
- Unknown command '\b'. 关于Mysql导入外部数据库脚本报错的解决
来自网络转载 还是字符集的问题 使用source导入外部sql文件: mysql> source F:\php\bookorama.sql;--------------source F:---- ...
- JVM升华篇
01 Garbage Collect(垃圾回收) 1.1 如何确定一个对象是垃圾? 要想进行垃圾回收,得先知道什么样的对象是垃圾. 1.1.1 引用计数法 对于某个对象而言,只要应用程序中持有该对象的 ...