


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、全栈小程序开发1. 课前准备1. 云开 档2. 课堂目标1. 开发 的云函数2. 开发 的全栈小程序3. 知识点云函数引入增加/ 除project.config.json文件外所有文件全部放到 frontend中/project.config.jsonminiprogramRoot: mini-fe/, cloudfunctionRoot: mini-back/,/backend/sum/index.js/ 云函数 文件const cloud = require(wx-server-sdk)cloud.init()/ 云函数 函数exports.main = (event, context)
2、= console.log(cosole.log,event) console.log(context)return sum: event.a + event.b开课吧web全栈架构师/ app.jsonLaunch: function () console.log(onLaunch.)/ 这里添加wx.cloud.init(),wx.cloud.callFunction(/ 云函数名称name: add,/ 传给云函数的参数data: a: 1,b: 2,success(res) console.log(res.result.sum) / 3,fail: console.error)wx.c
3、loud.callFunction(/ 云函数名称name: add,/ 传给云函数的参数data: a: 1,b: 2,).then(res = console.log(res.result) / 3).catch(console.error)获取用户信息getUserInfo必须要用button来获取,得到用户 后,可以通过wx.getUserInfo获取, 有弹窗提示开课吧web全栈架构师/ pages/logs/logs.wxmluserInfo. Name登录/ pages/logs/logs.js Page(data: userInfo:,onGetUserInfo(e) cons
4、ole.log(coGetUserInfo,e) if ( e.detail.userInfo) this.setData(avatarUrl: e.detail.userInfo.avatarUrl, userInfo: e.detail.userInfo)获取openid用户的openid,是当前用户在小 的唯一标识,使用云开发,可以很方便的实现获取openid 也就是登录的功能,借助wx-server-sdk新建云函数/server-end/login/login.jsconst cloud = require(wx-server-sdk) cloud.init()exports.mai
5、n = (event, context) = const wxContext = cloud.getWXContext() return event,openid: wxContext.OPENID,使用开课吧web全栈架构师/ pages/logs/logs.js onGetUserInfo(e)/ ./ 添加wx.cloud.callFunction( name: login,data: , success: res = console.log(res)console.log(云函数 login user openid: , res.result.openid),fail: err = c
6、onsole.error(云函数 login 调用失败, err) wx.navigateTo(url: ./deployFunctions/deployFunctions,)/ .持久化 openidwx.cloud.callFunction( name:login,data:, success:(res)=let userInfo = e.detail.userInfo userInfo.openid = res.result.openid this.setData(userInfo)wx.setStorageSync(userInfo,userInfo) console.log(登录 ,
7、res)查看用户开课吧web全栈架构师用户状态onLoad: function()const userInfo = wx.getStorageSync(userInfo) console.log(userInfo,userInfo)if(userInfo & userInfo.openid) this.setData(userInfo),添加云数据库一个类似mongodb的数据库 和传统的mysql关系型数据库的区别开课吧web全栈架构师添加集合添加商品集合 goods 云开发 操作新增数据文档开课吧web全栈架构师const db = wx.cloud.database() db.colle
8、ction(goods).add(data: name:web全栈, count: 1,success: res = / 在返回结果中会包含新创建的 的 _id console.log(res)wx.showToast(title: 新增 ,)console.log(数据库 新增 , _id: , res._id),fail: err = wx.showToast(icon: none, title: 新增 失败)console.error(数据库 新增 失败:, err)上传文件使用云开发的云 能力wx.chooseImage 选择图片wx.cloud.uploadFile上传文件上传头图d
9、oUpload() / 选择图片wx.chooseImage( count: 1,sizeType: compressed, sourceType: album, camera, success: res = wx.showLoading( title: 上传中,)const filePath = res.tempFilePaths0/ 上传图片const cloudPath = my-image123 + filePath.match(/.+?$/)0 wx.cloud.uploadFile(cloudPath, filePath,success: res = console.log(上传文
10、件 :, res) this.setData(uploadUrl:res.fileID),complete: () = wx.hideLoading(),),数据在 和集合上都有提供 get 方法用于获取单个 或集合中多个 的数据。开课吧web全栈架构师)db.collection(todos).where(_id: id).get(success(res) / res.data 是包含以上定义的两条 的数组console.log(res.data)更新数据使用update来更新数据,更新方式多样化,可以直接修改新的值,也支持递增这些函数操作列表页开课吧web全栈架构师/ frontend/p
11、ages/list/list.js Page(/* 页面的初始数据*/ data: goods: ,onLoad(options) this.getList(),getList() const db = wx.cloud.database(); db.collection(goods).get(success: res = console.log(res, res); this.setData( goods: res.data ););)index:比如每次 ,count+1const _ = mand db.collection(goods).doc(goodid).update(data: /新的值name:xx,/ 表示指示数据库将字段自增 10 count: mand.inc(1),success(res) console.log(res.data)下拉刷新开课吧web全栈架构师g.html#%E9%A1%B5%E9%9D%A2%E9%85%8D%E7%BD%AE需要配置 enablePullDownRefresh 配合on
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025广东省中医院贵州医院第十三届贵州人才博览会引才考前自测高频考点模拟试题及答案详解1套
- 2025河北承德市滦平县招聘社区工作者22人模拟试卷及答案详解1套
- 2025广东深圳市龙岗区第五人民医院第二批招聘14人考前自测高频考点模拟试题有答案详解
- 2025合肥市口腔医院招聘工作人员81人考前自测高频考点模拟试题及答案详解1套
- 2025江苏盐城市急救医疗中心招录政府购买服务用工1人考前自测高频考点模拟试题及参考答案详解1套
- 2025重庆九洲智造科技有限公司招聘项目经理等岗位测试笔试历年参考题库附带答案详解
- 2025贵州遵义市诚达投资开发有限责任公司招聘笔试历年参考题库附带答案详解
- 2025贵州贵阳国家高新区选聘国有企业领导人员总及考察笔试历年参考题库附带答案详解
- 2025萍乡市健志供应链管理有限公司招聘经理1人笔试历年参考题库附带答案详解
- 2025福建龙岩国信物业有限公司招聘5人笔试历年参考题库附带答案详解
- 2024版2025秋贵州黔教版综合实践活动五年级上册全册教案教学设计
- 转作风重实干课件
- 甲状腺课件类型
- 单招备考科学方案
- 《工程勘察设计收费标准》(2002年修订本)
- 露天停车场施工方案
- 山东省青岛第三十九中学2023-2024学年九年级上学期月考数学试卷(10月份) (月考)
- HR如何筹划年终奖?(10大经典个税筹划案例)汇编
- GB/T 43063-2023集成电路CMOS图像传感器测试方法
- 作文格子纸-word版本
- GB/T 18103-2022实木复合地板
评论
0/150
提交评论