Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.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
Dart 如何处理强模式分析的隐式强制转换警告?_Dart - Fatal编程技术网

Dart 如何处理强模式分析的隐式强制转换警告?

Dart 如何处理强模式分析的隐式强制转换警告?,dart,Dart,我在web应用程序中经常做的一件事是从服务器请求资源,并在dart中将其作为地图处理 导入'dart:convert'; 常量字符串sampleJSON='' { “成员”:{ “意义飞行”:42 } } '''; 映射getResource(){ //施点魔法 返回JSON.decode(sampleJSON); } 我认为JSON解码映射中的所有键都是字符串,但显然我不知道值的类型。在checked模式下,这工作得相当好 在强模式下对上述代码的分析将告诉我:从动态到映射的不可靠隐式转换 问

我在web应用程序中经常做的一件事是从服务器请求资源,并在dart中将其作为地图处理

导入'dart:convert';
常量字符串sampleJSON=''
{
“成员”:{
“意义飞行”:42
}
}
''';
映射getResource(){
//施点魔法
返回JSON.decode(sampleJSON);
}
我认为JSON解码映射中的所有键都是字符串,但显然我不知道值的类型。在checked模式下,这工作得相当好

在强模式下对上述代码的分析将告诉我:
从动态到映射的不可靠隐式转换

问题: 处理此类cast警告的好策略是什么

有问题的备选方案1:
Map getResource(){
//施点魔法
返回JSON.decode(sampleJSON);
}
稍后可能会出现问题:
Iterable keys=getResource()。keys
将发出警告

有问题的选择2:
Map getResource(){
//施点魔法
返回新的Map.from(JSON.decode(sampleJSON));
}
它不会严重降低性能吗?对于
Map meansion=getResource()[“member”],我仍然会得到一个警告


谢谢您的建议。

如果您知道类型,请明确说明

return JSON.decode(sampleJSON) as Map<String,dynamic>;
另见

// ignore: STRONG_MODE_DOWN_CAST_COMPOSITE
return JSON.decode(sampleJSON);