Taro(1.3.22)中使用微信小程式雲函式
阿新 • • 發佈:2021-02-06
-
建立雲開發環境,獲取雲開發環境ID:微信小程式雲開發
-
在專案中建立雲函式資料夾
-
在project.config.json檔案中新增配置項 “cloudfunctionRoot”: “資料夾名稱”
-
新增環境ID到專案中
//在app.tsx中新增
componentDidMount() {
if (process.env.TARO_ENV === 'weapp') {
Taro.cloud.init({
env: 'test', //雲開發環境ID
traceUser: true
} )
}
}
- 編寫雲函式:
目錄:
getUnlimit
—config.json
—index.js
—package.json
// config.json
{
"permissions": {
"openapi": [
"wxacode.getUnlimited"
]
}
}
// index.js
// 雲函式入口檔案,獲取小程式碼
const cloud = require('wx-server-sdk')
cloud.init()
// 雲函式入口函式
exports.main = async (event, context) => {
try {
const result = await cloud.openapi.wxacode.getUnlimited({
page: event.pages,
scene: event.scene,
isHyaline: true
})
return result
} catch (err) {
throw err
}
}
// package.json
{
"name": "getUnlimit",
"version" : "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"wx-server-sdk": "~2.0.3"
}
}
- 儲存編譯之後再微信開發者工具中點選上傳雲函式
- 呼叫雲函式
Taro.cloud
.callFunction({
name: "getUnlimit",
data: {
scene: id,
pages: 'pages/index/index'
}
})
.then(res => {
console.log(res)
})
.catch(() => {
console.log(res)
})