【发布时间】:2022-02-02 05:27:52
【问题描述】:
在 Dart / Flutter 中,使用 jsonEncode 将地图(包含 Closure 方法)转换为 json 时,出现以下错误:
Converting object to an encodable object failed: Closure: () => dynamic
地图有:
orderedMap1["fooddelete"] = () => deleteItemFunction(
singleitem["orderId"], singleitem["id"], singleitem["shopId"]);
如果在上面注释,则 jsonEncode 有效,否则抛出错误。
在解析 Map 为 Json 时如何指示 jsonEncode 跳过闭包?
【问题讨论】:
-
为什么将闭包存储在
Map中?如果您不希望jsonEncode对整个Map进行编码,则需要先删除不需要的元素或创建一个仅包含所需元素的副本。
标签: json flutter dart hashmap closures