如何在Flutter中定义JSON对象这样的变量?

pepwfjgg  于 2023-03-09  发布在  Flutter
关注(0)|答案(2)|浏览(125)

我尝试做的是创建一个可以保存以下数据的变量:

questiion = { 'title': '',
            'description': '',
            'questionTitle': '',
            'option1Text': '',
            'option2Text': '',
            'option3Text': '',
            'option1Correctness': false,
            'option2Correctness': false,
            'option3Correctness': false,
            'questionNumber' : 1 }

然后,我可以从表单中获取这些值,并将用户输入的数据保存到表单中,如下所示:

onSaved: (value) {
            question['title'] = value!;
          },

我不知道flutter里面有没有什么数据类型可以做到这一点?我知道有Map<>,但是它只能包含1对key:value。也许我应该创建一个嵌套Map?或者有更好的方法?

rryofs0p

rryofs0p1#

是的,您可以使用嵌套的键-值Map,或者也可以将所有内容保留在对象中。
以下内容可能对您有所帮助:Json parsing in dart (flutter)

zbsbpyhn

zbsbpyhn2#

使用Map<String,dynamic>应该是正确的方法(如果你不想创建一个类)。
就像这样:

final question = <String, dynamic>{
      'title': '',
      'description': '',
      'questionTitle': '',
      'option1Text': '',
      'option2Text': '',
      'option3Text': '',
      'option1Correctness': false,
      'option2Correctness': false,
      'option3Correctness': false,
      'questionNumber': 1
    };

    print(question);

打印机将提供以下输出:

{title: , description: , questionTitle: , option1Text: , option2Text: , option3Text: , option1Correctness: false, option2Correctness: false, option3Correctness: false, questionNumber: 1}

相关问题