uni-app uniappx使用unicloud编译为App时异常
uni-app uniappx使用unicloud编译为App时异常
示例代码:
<template>
<view>
<image class="logo" src="/static/logo.png"></image>
<view class="text-area">
<text @click="jisuan" class="title">{{title}}</text>
</view>
</view>
</template>
<script>
export default {
data() {
return {
title: 'Hello,World!'
}
},
methods: {
async jisuan(){
const UserModel=uniCloud.importObject("user");
try{
const res = await UserModel.sum(3,4)
console.log(res);
} catch (e){
console.log(e);
}
}
}
}
</script>
<style>
.logo {
height: 100px;
width: 100px;
margin: 100px auto 25px auto;
}
.title {
font-size: 18px;
color: #8f8f94;
text-align: center;
}
</style>
云对象
module.exports = {
sum(){
return a+b;
}
}
操作步骤:
直接用示例代码复现
预期结果:
7
实际结果:
报错
bug描述:
uniappx编译为app无法使用,报错如图所示
更多关于uni-app uniappx使用unicloud编译为App时异常的实战教程也可以访问 https://www.itying.com/category-93-b0.html
2 回复
在uni-app x上,云函数和云对象的返回值必须是对象,因为前端的类型统一定义成了UTSJSONObject
你可以将你需要返回的值包裹在{}内,如下所示
return {
num: 0
}
更多关于uni-app uniappx使用unicloud编译为App时异常的实战教程也可以访问 https://www.itying.com/category-93-b0.html
从报错信息来看,问题出在云对象方法的实现上。你的云对象代码中有两个主要问题:
- 云对象方法
sum()
没有接收参数,但在调用时传入了3,4
两个参数 - 方法内部使用了未定义的变量
a
和b
正确的云对象代码应该是:
module.exports = {
sum(a, b) { // 需要声明参数
return a + b; // 使用传入的参数
}
}