flutter - 在 Map<dynamic, dynamic> Dart/Flutter 中添加 map

标签 flutter dart

我坐 6 小时 试图添加Map<dynamic, dynamic> 包含 Map<dynamic, dynamic> 里面 另一个 Map<dynamic, dynamic>
如何像这样添加 map :

{
    map1:{
          map1_key1: map1_val1
          map1_key2: map1_val2
          map1_2:{
                  map1_3:{
                           map3_key1: map3_val1
                           map3_key1: map3_val2
                         }
                  map2_key1: map2_val1
                  map2_key1: map2_val2
                 }

          map1_key3: map1_val3
         }
}

在 map 内部重复调用 masterMap ,并像访问任何其他 map 一样访问其中的每个键/值?
  • 我试过 this
  • 我试过 this
  • 我试过 this
  • 我试过 this
  • 试过 addAll() 函数给了我在 null 上调用的错误..
  • 试过 addEntries() 函数给了我
    The argument type 'Map<dynamic, dynamic>' can't be assigned to the parameter type 'Iterable<MapEntry<dynamic, dynamic>>'
    

  • 没有任何作用,我需要帮助这是非常糟糕和愚蠢的事情,为什么没有简单的函数将所有映射键/值与另一个键/值合并,那么简单?!

    更新:
    我的代码:
    Map<dynamic, dynamic> theSnapShot;
    theSnapShot = {
      'map1': {
              '-LyUAD8B0LpKZ-5-cRn-': {
                       'CoordsMap': [null, {'FirstCoords': '30.088,31.279',}]
                                      }
              }
                 };
    Map<dynamic, dynamic> masterMap;
    masterMap.addAll(Map.from(theSnapShot['map1']));
    

    输出:
    Unhandled Exception: NoSuchMethodError: The method 'addAll()' was called on null.
    

    最佳答案

    这很简单
    您在这里有两个选择,第一个:定义键然后为其分配值

    Map someThing = {
        "someThing2":{
          'key1': 'val1',
          'key2': 'val2',
          'key3': {},
        }
      };
    // {someThing2: {key1: val1, key2: val2, key3: {}}}
    someThing['someThing2']['key3'] = {
        'someThing3': {
              'key4': 'val4',
            },
      };
    // {someThing2: {key1: val1, key2: val2, key3: {someThing3: {key4: val4}}}}
    

    第二个选项是添加键和值,就像下面
    Map someThing = {
        "someThing2":{
          'key1': 'val1',
          'key2': 'val2',
        }
      };
    
    someThing['someThing2'].putIfAbsent('key4', () => {
        'someThing3': {
              'key4': 'val4',
            },
      });
    // {someThing2: {key1: val1, key2: val2, key4: {someThing3: {key4: val4}}}}
    

    关于flutter - 在 Map<dynamic, dynamic> Dart/Flutter 中添加 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59752938/

    相关文章:

    mobile - Flutter listview.separator item 点击

    flutter - Flutter:admob构建成功,但随后崩溃

    flutter - ListView Flutter 的单选

    flutter - flutter 如何使用Navigator.pop从第二页发送数据

    android - 如何通过创建一个由3个容器(左,中,右部分)组成的单独的ListView来避免无限的高度声明

    json - Flutter-将JSON文件从url移动到 Assets 文件夹

    flutter - Flutter中如何将Container的宽度与其他Container相匹配?

    dart - 如何即时显示版本号

    flutter - 将屏幕带到导航器的顶部

    dart - Dart中的UI布局是否有网格系统?