web tricks
首页
前端
CSS
ChickenHouse (opens new window)
首页
前端
CSS
ChickenHouse (opens new window)
  • 前端视野
2021-11-23

Taro 云开发

# Taro 云开发

环境:Taro@3.x

# 模板目录结构

按照Taro官方的文档配置云开发模板 (opens new window)。

  1. 配置 project.config.json

主要是配置以下几个字段:

{
  "miniprogramRoot": "client/dist/", // 编译打包后的代码目录
  "projectname": "miniApp",
  "description": "小程序",
  "cloudfunctionRoot": "cloud/functions/", // 云函数目录
  "cloudfunctionTemplateRoot": "cloudfunctionTemplate", // 云开发的云函数测试数据模板所在的目录
  ...
}

# 编写云函数

以登录云函数为示例,云函数目前为:cloud/functions/login/index.js

const cloud = require('wx-server-sdk')

exports.main = async (event, context) => {
  // 这里获取到的 openId、 appId 和 unionId 是可信的,注意 unionId 仅在满足 unionId 获取条件时返回
  let { OPENID, APPID, UNIONID } = cloud.getWXContext()

  return {
    OPENID,
    APPID,
    UNIONID,
  }
}

# 安装云函数依赖

云函数的运行环境是在nodejs在,还需要安装云函数所需要的依赖,比如wx-server-sdk。新建一个package.json文件:

{
  "name": "login",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "wx-server-sdk": "latest"
  }
}

打开终端,进入云函数目录下,运行npm install or yarn,安装依赖。

# 调用云函数

到这里我们可以在client下的任意页面调用云函数。在此之前我们还需要做一下初始化操作。

  1. init

配置云开发的环境,这些的env参数为云开发的环境ID,可通过微信开发者工具的云开发面板找到。

componentDidMount() {
  Taro.cloud.init({
    env: 'xxx-mxq8s'
  })
}
  1. 调用
login = () => {
  Taro.cloud
    .callFunction({
      name: 'login',
      data: {},
    })
    .then((res) => {
      console.log('login---', res.result)
    });
};

这样,我们就已经写好了调用云函数的代码了。接下来还需要将云函数上传到云开发环境中。

# 上传云函数

进入 client 目录,在此目录下运行相关编译预览或打包命令,启动小程序,用微信开发者工具打开小程序项目,注意,这里打开项目时选择的目录是整个项目目录,而不是dist目录。

  1. 找到微信开发者工具资源管理器下云函数目录login

  2. 右键,选择【上传并部署:云端安装依赖(不上传node_modules)】

上传完成之后,就可以在页面中点击按钮调用云函数啦~

最近更新
01
CSS 动画库推荐
05-07
02
Pinia,一个更简洁的 Vuejs 状态管理工具
03-30
03
reative 和 ref
03-30
更多文章>
Copyright © 2020-2022 konnga.cn
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式