简体中文
4.13版本起安卓端使用
UniCloudCallFunctionResult
必须传入泛型,比如UniCloudCallFunctionResult<UTSJSONObject>
,其中泛型类型为其result属性的类型
请求云函数
Web | Android | iOS |
---|---|---|
4.0 | 阿里云 3.9,腾讯云 3.91,支付宝云 3.98 | 4.11 |
名称 | 类型 | 必填 | 默认值 | 兼容性 | 描述 | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options | UniCloudCallFunctionOptions | 是 | - | - | - | ||||||||||||||||||
|
类型 | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Promise<UniCloudCallFunctionResult<T>> | ||||||||||||||||||
|
4.13版本起支持,仅安卓端会构造对应的泛型的实例,web端和iOS端泛型仅作为类型使用。
用法:uniCloud.callFunction<泛型类型>({name: 'xxx', data: {}} as UniCloudCallFunctionOptions)
在不传泛型时callFunction返回的类型为Promise<UniCloudCallFunctionResult<UTSJSONObject>>
,传入泛型后callFunction返回的类型为Promise<UniCloudCallFunctionResult<泛型类型>>
代码示例
// 云函数fn代码
'use strict';
exports.main = async (event, context) => {
return {
errCode: 0,
errMsg: '',
detail: 'call function detail'
};
};
// 客户端代码
type CallFunctionResult = {
errCode : number,
errMsg : string,
detail : string
}
uniCloud.callFunction<CallFunctionResult>(
{
name: 'fn',
data: { a: 1 } as UTSJSONObject,
} as UniCloudCallFunctionOptions
).then(function (res) {
const result = res.result // result的类型为CallFunctionResult
const detail = result.detail // 可直接使用.detail访问
console.log(detail)
}).catch(function (err : any | null) {
console.error(err)
})