HarmonyOS 在ArkTS中,想要将JSON 转为Class后,Class 中的function 方法丢失了

HarmonyOS 在ArkTS中,想要将JSON 转为Class后,Class 中的function 方法丢失了。

HarmonyOS
2024-11-25 11:41:06
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zxjiu

语法问题,JSON.parse() 方法返回的是一个普通对象,而不是 DataBean 类的实例。不包含类定义的任何方法。需要在将 JSON 数据转换为 DataBean 实例时,手动创建类的实例,并将 JSON 对象的属性赋值给类的实例。参考:

class DataBean { 
  code = -1; 
  msg = ''; 
 
  isOK() { 
    return this.code === 0; 
  } 
 
  // 静态方法,从 JSON 字符串创建 DataBean 实例 
  static fromJson(jsonString: string): DataBean { 
    const jsonData:ESObject = JSON.parse(jsonString); 
    const dataBean = new DataBean(); 
    dataBean.code = jsonData.code; 
    dataBean.msg = jsonData.msg; 
    return dataBean; 
  } 
} 
 
let json = '{"code":0,"msg":"success"}'; 
let dataBean = DataBean.fromJson(json); 
console.log("test",dataBean.msg); // success 
console.log("test",dataBean.isOK()); // true,
分享
微博
QQ
微信
回复
2024-11-25 15:09:59
相关问题
NAPI定义并注册Class
707浏览 • 1回复 待解决
ArkTSclass有析构函数吗?
252浏览 • 1回复 待解决
如何将JSON字符串转Class对象
443浏览 • 1回复 待解决
class使用闭包方式初始化 默认值丢失
1889浏览 • 1回复 待解决
HarmonyOS class 转 Map
189浏览 • 1回复 待解决
求js class类名动态绑定问题?
6432浏览 • 1回复 待解决
json字符串与自定义class结构转换
2098浏览 • 1回复 待解决
如何将JSON字符串转Class对象数组?
459浏览 • 1回复 待解决