Page({
data: {
i:""
},
onLoad: function() {
this.gettest();
console.log("i:"+this.data.i)
},
gettest: function() {
wx.cloud.callFunction({
name:'test'
}).then(res => {
this.setData({ i:res.result.data.length })
console.log("in gettest i:"+this.data.i)
})
.catch(console.error)
}
})
// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init()
const db = cloud.database()
const _ = db.command
const result = ''
// 云函数入口函数 查询所有pname不为空的记录 (假定有100条记录)
exports.main = (event, context) => {
return new Promise((resolve, reject) => {
db.collection('tstd').where({
pname: _.neq('')
}).get().then((res) => {
resolve(res)
})
})
}
运行结果:
i:
in gettest i:100
而希望的结果是
in gettest i:100
i:100
这个无解,使用回调函数吧
npm install regenerator
将下载文件中名为regenerator-runtime.js的文件拿出来 放入小程序
在页面js 引用regenerator-runtime,例如:
const regeneratorRuntime = require('../../libs/regenerator-runtime')
就可以在小程序页面中使用async await 语法糖了