首页 > 其他分享 >【HarmonyOS NEXT】Map如何转JSON

【HarmonyOS NEXT】Map如何转JSON

时间:2024-03-05 15:36:01浏览次数:146  
标签:Map 适配 NEXT HarmonyOS JSON let key

​【关键字】

HarmonyOS NEXT、Object.fromEntries

 

【问题背景】

之前基于API 9发过一篇文章【HarmonyOS】JSON格式化解析Map数据失败 - 开发者服务与平台部社区 - 3MS知识管理社区 (huawei.com),里面提到用Object.fromEntries可将Map数据转为JSON数据,但是在NEXT版本上却被校验住了:

cke_3097.png

这是为什么呢?

 

【问题分析及解决方案】

这是因为NEXT版本ArkTS加强了类型校验,需要做适配,可参照以下适配代码:

适配前:

let entries = new Map([
 ['name', '张三'],
 ['age', '33'],
]);

let obj = Object.fromEntries(entries);

适配后:

let entries = new Map([
 ['name', '张三'],
 ['age', '33'],
]);

let obj: Record<string, Object> = {};
entries.forEach((value, key) => {
  if (key != undefined && key != null) {
    obj[key] = value;
  }
})

测试截图:

cke_17040.png

标签:Map,适配,NEXT,HarmonyOS,JSON,let,key
From: https://www.cnblogs.com/mayism123/p/18054148

相关文章

  • 【HarmonyOS NEXT】解决Scan Kit生成二维码不支持添加logo图片
    ​ 【关键字】HarmonyOS、ScanKit、二维码、logo图片、生成二维码 1、写在前面HarmonyOS的ScanKit提供了码图生成的能力,具体的使用方式可以参考开发指南:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/scan-barcodegenerate-0000001714658685现在有个......
  • 【HarmonyOS】如何实现数据持久化不会被应用卸载而清除
    【关键字】数据持久化,AssetStoreKit 【问题】最近在学习HarmonyOSpreivewer,遇到了一个场景,跟大家分享一下。核心的需求是需要做一个数据持久化的能力,但是将数据缓存在应用沙箱的files目录下后,每次重启应用确实能够查到存储的数据,一旦将应用卸载重装,或者清除应用数据后,就......
  • list集合转map 封装
    //list转map很多情况下,需要遍历2层for循环,时间复杂度为O(n的平方),可以借助转map,遍历循环一层for循环,需要的从map中取数据,提升速度,//map的时间复杂度为O(1)可忽略不计,一下是对list转map的封装publicstatic<T,K>Map<K,T>list2Map(List<T>list,Function<?superT......
  • ConfigMap挂载与Subpath在Nginx容器中的应用
    本文分享自华为云社区《nginx.conf以configmap文件形式挂载到nginx容器中以及subpath使用场景》,作者:可以交个朋友。背景nginx.conf通过configmap文件形式挂载到容器内,可以更加方便的修改nginx.conf配置方案简介将配置文件nginx.conf以configmap文件的方式挂载到容器中。为了更......
  • [Rust] Using .map_err instead of wrap which cause panic
    //Usingcatch-allerrortypeslike`Box<dynerror::Error>`isn'trecommended//forlibrarycode,wherecallersmightwanttomakedecisionsbasedonthe//errorcontent,insteadofprintingitoutorpropagatingitfurther.Here,we//defin......
  • 使用JMeter的JSON提取器:通过递归下降查找,从接口响应中提取特定字段
    在接口测试中,我们经常需要从返回的JSON数据中提取特定字段以便后续使用。JMeter提供了JSON提取器,可以帮助我们实现这一目标。本文将介绍如何使用JMeter的JSON提取器通过递归下降查找的方式从接口响应中提取特定字段,并通过示例解释JSON表达式中".."的逻辑。1.示例接口响应......
  • 接口测试-json文件读取报java.lang.ClassCastException: java.util.LinkedHashMap can
    问题原因:从json文件中读取的信息为hashMap,与预期(类对象)格式不匹配,无法解析。问题分析:json文件包含一个json串列表,代表向接口中传递不同的参数组合,通过下面方法读取json文件信息,反序列化成类对象,并把这些赋值的对象进行接口请求参数进行传递。publicList<T>getReadValuesLi......
  • 【HarmonyOS】聊一聊ArkUI中的Image组件缓存
    【关键字】image组件,缓存 【问题描述】给Image组件设置网络图片展示,业务将图片进行了下线处理,再次进入这个页面Image组件还是展示着这张图,而不是恢复了默认占位图。 【问题分析】这个问题显然是跟Image组件的缓存机制有关。目前Image组件的图片会有内存缓存机制,会统计到......
  • 【HarmonyOS】ArkUI中this指向的坑
    ​【关键字】this指向,.bind(this),TS到ArkTS的适配 随着HarmonyOSPreviewer版本的发布,笔者也是立马鸟枪换炮,想试一试鸿蒙的新特性,新功能。结果刚把老的工程代码导入,工程就无法编译了,让我们来看看是哪里报了错:​​bind方法居然不支持了。要知道在Api9的HarmonyOS开发过程中,我......
  • 【HarmonyOS】Button按钮设置带有渐变色的背景图片无效
    ​【关键字】Button、渐变色、背景图片、backgroundImage 【问题描述】在为Button组件设置背景图片时未生效,这里准备的背景图片是渐变色的,当在代码中设置完成之后,发现按钮并没有像预想的那样变成渐变色,代码如下:​效果是这样的:​这也太奇怪了,难道是Button按钮的背景图片不......