如何在颤动中从图形 QL 响应中删除类型名
Posted
技术标签:
【中文标题】如何在颤动中从图形 QL 响应中删除类型名【英文标题】:How to remove typename from graph QL response in flutter 【发布时间】:2021-07-05 01:24:17 【问题描述】:谁能帮我从flutter.how中的图形QL中删除类型名和不需要的字段,以便像邮递员一样获得响应。我正在使用包https://pub.dev/packages/graphql
【问题讨论】:
【参考方案1】:我遇到了同样的问题,我找不到禁用 __typename 的简单方法, 于是我写了一个小程序,
T removeTypename<T>(T data) =>
_removeUnwantedKeys(data, ['__typename']);
T _removeUnwantedKeys<T>(T data, List keysToRemove)
if (data is Map && data.containsAnyOf(keysToRemove))
Map d = ;
data.forEach((key, value)
if (!keysToRemove.contains(key)) d[key] = _removeUnwantedKeys(value,keysToRemove);
);
return d as T;
else if (data is List)
return data.map((c) => _removeUnwantedKeys(c,keysToRemove)).toList() as T;
else
return data;
extension MapsMadeEasy<U, V> on Map<U, V>?
bool containsAnyOf(List keys)
if (this == null) return false;
return this!.entries.any((element) => keys.contains(element.key));
【讨论】:
thnks@0xManjeet以上是关于如何在颤动中从图形 QL 响应中删除类型名的主要内容,如果未能解决你的问题,请参考以下文章