valueIsMap static method

Map<String, dynamic> valueIsMap(
  1. Map<String, dynamic> templateMap,
  2. Map<String, dynamic> targetMap
)

Implementation

static Map<String,dynamic> valueIsMap(Map<String,dynamic> templateMap,Map<String,dynamic> targetMap) {
  templateMap.forEach((key, value) {
    //如果值是map
    if (value != null && value is Map) {
      Map<String,dynamic> childTemplateMap = value as Map<String,dynamic>;
      Map<String,dynamic>? childTargetMap;
      if (!targetMap.containsKey(key)) {
        childTargetMap = {};
      } else {
        childTargetMap = targetMap[key];
      }
      childTargetMap = valueIsMap(childTemplateMap, childTargetMap!);
      targetMap[key] = childTargetMap;
    } else {
      if (!targetMap.containsKey(key)) {
        targetMap[key] = value;
      }
    }

  });

  return targetMap;
}