错误是当我尝试使用ModalRoute.of(context).settings。参数,我得到一个错误。我还想把它保存在地图中,但是不能。
Map data = {};
data = ModalRoute.of(context).settings.arguments; // this is the error;
错误:Object类型的值?'不能赋值给类型为'Map<dynamic,>'的变量。
- 'Object'来自'dart:core'.
- 'Map'来自'dart:core'。 ModalRoute.of(context).settings.arguments;
经过这么多的问题,最后,解决方法竟然如此简单。
Map data = {};
data = ModalRoute.of(context).settings.arguments as Map;
尝试使用:
data=ModalRoute.of(context)?.settings?.arguments as Map;
?
用于零安全
经过大量的搜索,这个结尾作品
Map data = {};
data = ModalRoute.of(context)?.settings.arguments as Map;
可以使用下面的代码:
Map <String, Object>data = {}; // as the arguments passed from
data = {"dataKey":ModalRoute.of(context).settings.arguments};
之后,通过调用
访问你的参数data["dataKey"]
// it will return the arguments
我正面临着类似的问题,我认为这个解决方案会帮助你
Map data = ModalRoute.of(context)!.settings.arguments as Map;
将以下代码放入StatefulWidget类
Map userdata = {};
userdata = ModalRoute.of(context)!.settings.arguments as Map;
print(userdata);
你的输出看起来像这样
flutter: {firstName: Dhaval, lastname: Gevariya}
-
定义参数如下:
类productdetailsargarguments {最终产品产品;
ProductDetailsArguments({要求this.product});
}
-
提取如下参数
final args = ModalRoute.of(context)!
为了解决这个问题,我做了:
Map <String,>数据= {};data = ModalRoute.of(context).settings。参数为Map<String,>;