Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 未处理的异常:类型';列表<;动态>';不是类型为';地图<;字符串,动态>';关于粘性颤振_Flutter - Fatal编程技术网

Flutter 未处理的异常:类型';列表<;动态>';不是类型为';地图<;字符串,动态>';关于粘性颤振

Flutter 未处理的异常:类型';列表<;动态>';不是类型为';地图<;字符串,动态>';关于粘性颤振,flutter,Flutter,我想将列表视图从TextFormField显示到其他页面 但是日志中的结果是这样说的 E/flutter ( 9872): [ERROR:flutter/lib/ui/ui_dart_state.cc(199)] Unhandled Exception: type 'List<dynamic>' is not a subtype of type 'Map<String, dynamic>' E/flutter ( 9872): #0 LoanResult.sim

我想将列表视图从TextFormField显示到其他页面 但是日志中的结果是这样说的

E/flutter ( 9872): [ERROR:flutter/lib/ui/ui_dart_state.cc(199)] Unhandled Exception: type 'List<dynamic>' is not a subtype of type 'Map<String, dynamic>'
E/flutter ( 9872): #0      LoanResult.simulator (package:fluttermysql/models/LoanSimulationModel.dart:62:35)
E/flutter ( 9872): <asynchronous suspension>
E/flutter ( 9872): #1      _LoanSimulationState.result (package:fluttermysql/view/LoanSimulation.dart:29:5)
E/flutter ( 9872): <asynchronous suspension>
E/flutter ( 9872): 
下面是React Native的示例


如何使用列表获得此结果?谢谢

jsonDecode(response.body)
正在返回一个
列表
。可能它是一个包含单个元素的词典列表(您可以通过打印其内容来确保这一点),但如果是这样,您可以使用
jsonDecode(response.body).single
。不。此数据来自数组,因此其返回未经处理的异常:错误状态:元素太多E/flatter(19540):#0 List.single(dart:core patch/growtable_array.dart:343:5)是否尝试打印
响应。body
正在返回并分析要从中获取的元素<代码>jsonDecode(response.body)[0]会起作用,但我不确定这是否是您所期望的。结果应该是这样的:“否”:0,“利息”:“0.00”,“余额”:“10000000.00”,“本金”:“0.00”,“分期付款”:“0.00”,“状态”:trueWhat
response.body
返回?
static Future<LoanResult> simulator({String periodtime, String interestpermonth, String loanamountrequest, String idUser, String url}) async  {
    var url = "http://192.168.0.23/Api/loansimulation.php?periodtime=" + periodtime + "&interestpermonth=" + interestpermonth + "&loanamountrequest=" +loanamountrequest;
    final response = await http.get(url,headers:{"Content-Type":
    "application/json"});
    var res = LoanResult.fromJson(jsonDecode(response.body));
    return res;
  }
void result() async {
    LoanResult loanResult;
    await LoanResult.simulator(
        periodtime: periodtime,
        interestpermonth: interestpermonth,
        loanamountrequest: loanamountrequest,
        url: BaseURL.kLoanSimulationUrl)
        .then((value) => loanResult = value);
    print(loanResult.Status);
    if (loanResult.Status == true) {
      Text(loanResult.message);
      Navigator.pushReplacementNamed(context, Simulator.id);
    } else {
      _scaffoldKey.currentState.showSnackBar(SnackBar(
        content: Text(loanResult.message),
        duration: Duration(seconds: 3),
      ));
    }
  }