评论发布器 是淘宝商家应用的一个经典案例,本文将结合商家应用的前端页面和 小程序serverless后端服务,完成一个商家应用的开发,使其同时具备前端和后端的能力,可以作为一个完整的应用使用。
云开发视频介绍
1)拥有淘宝账号;
2)已 申请 开通商家应用开发者权限;
3)已 开通云服务;
4)已 创建云Serverless;
5)下载安装 应用开发者工具(简称 IDE)。
1.打开商家应用IDE,选择【淘宝->商家应用】,点击 + 号。
2.输入项目名称,项目路径会自动填充,选择【启用云服务】为后端服务,点击【完成】。
3.在 IDE 的客户端依赖页面,安装@tbmp/mp-cloud-sdk。
4.右键点击【云服务】功能tab,即可看到与当前商家应用关联的云服务。
在 sever 目录右键选择需要部署的后端环境(如测试环境)。选择server目录下的一个【云函数目录】右键点击【创建并部署】提交云函数部署。
1.点击【模拟器】可以在【IDE 模拟器】中查看预览效果;还可以点击【预览】,使用手机淘宝扫描二维码在手机上实现真机预览。
2.点击【上传】将商家应用上传到开放平台,具体操作请参考商家应用提审、发布流程。
增加一个添加评论的后端云函数,以供商家应用端调用。
1)在 server 目录右键,点击【新建云函数 -> Nodejs】,输入addComment,确定后即创建了一个空的云函数,编辑 addComment/index.js中的代码。
'use strict';
exports.main = async (context) => {
const {selectedImage, value} = context.data;
try {
const result = await context.cloud.db.collection('comments').insertOne({
imageUrl: selectedImage,
text: value
})
return result;
} catch (e) {}
};
2.addComment 目录右键点击【创建并部署】提交云函数部署。
3.在client/pages/demo/demo.js文件中,响应点击的回调onTap中 ,调用部署好的云函数。
//点击评论按钮
async onTap() {
const { value, selectedImage } = this.data;
try {
let result = await cloud.function.invoke('addComment', { imageUrl: selectedImage, text: value });
} catch (e) {
my.showToast({
content: e.message || JSON.stringify(e)
});
}
}
<view a:if="{{activity}}" class="container">
...
<button onTap="onTap">添加评论</button>
...
</view>