问题标签 [built-value]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1074 浏览

dart - 如何在built_value EnumClass 中定义字段?

我想有EnumClass一个可选message字段,如下所示:

问题是我收到此错误消息:

无法为具有非最终字段的类定义 const 构造函数。

如果我声明messagefinal,那么我不能初始化它,因为构造函数是隐藏的。

有没有办法做到这一点?也许制作一个生成的枚举生成器?

0 投票
2 回答
307 浏览

git - 我们应该将 built_value 生成的代码提交到 git 吗?

built_value生成.g.dart代码,但是文档没有给出任何提示,我们是否应该将它们添加到我们的 git 存储库中。

我认为我们应该这样做,因此克隆我们的 repo 的开发人员可以启动并运行,而无需重新生成代码......但是有些人说生成的代码不应该被提交,那么,有什么建议built_value呢?

0 投票
1 回答
911 浏览

dart - built_value 可以像这样反序列化泛型吗?

我所有的 JSON 数据都包含状态(int)、msg(字符串)和数据(任何类型)。因为我来自java,所以我想使用泛型。我正在为带有built_value的顶级泛型编写反序列化,但失败了。

我试过这个

https://github.com/google/built_value.dart/blob/master/end_to_end_test/test/generics_serializer_test.dart

但不是很明白。

下面是我的代码:

0 投票
1 回答
2754 浏览

pagination - 如何在颤动块模式中实现分页

我正在尝试使用 bloc 模式实现分页。我想要的是当 list_view 到达末尾时,它会用新内容更新当前 list_view 但它正在做的是用新内容创建一个新的 list_view

Built_valueModel.dart

块飞镖

Main_UI.dart

当 list_view 到达终点而不是更新当前 list_view 时,它正在创建一个新的 list_view ,这很明显,因为我正在创建一个具有不同参数的新块。

0 投票
0 回答
1021 浏览

dart - 使用内置值反序列化泛型类型

我有这个对象:

这是我用来将响应的动态结果映射到ApiData对象的代码:

但我最终得到了这个错误:type '_$ApiDataSerializer' is not a subtype of type 'Serializer<ApiData<MyBuitValueAbstractObject>>'

我试图添加:

但这没有用。如何正确反序列化我的results

编辑 1 - 如果我使用standardSerializers.deserializeWith<ApiData>(没有<T>这个时间)我得到这个消息错误:

未处理的异常:反序列化'[offset,0,limit,20,total,2233,count,20,结果,[{...'到'ApiData'失败,原因是:反序列化'[{...'到'BuiltList'失败的原因是:无效的参数:反序列化时的类型未知。需要指定类型或鉴别器字段。

如何指定“鉴别器字段”的东西?

编辑 2 - 我现在找到了一个可以解决它的黑客,它不满足我,但我可以继续工作,直到找到合适的解决方案:https ://github.com/google/built_value.dart/issues/368#问题comment-486567646

0 投票
0 回答
541 浏览

dart - 内置值生成器失败

从今天早上开始,构建值 ( pub run build_runner build) 的生成步骤失败了

我尝试升级到内置值 6.6.0(从 6.3.2),但没有帮助

Dart 版本是 2.1.0-dev.9.4

欢迎任何建议

0 投票
2 回答
27 浏览

flutter - 使用 map 而不是 for 语句使类模型中的列表返回零

当我ListView从从服务器返回的数据女巫实现分页时,我可以简单地测试这种分页能力并且工作正常,例如通过这段代码我可以通过简单数据制作列表列:

现在我正在尝试从服务器获取数据并从中获取这些数据:

我得到错误:

在这条线的大小list为零:

response.map((post)=>list.add(PostItem((b) => b..title = post.title),));

我的ContentsModel课程内容是:

0 投票
1 回答
716 浏览

json - 是否有任何合理的方法可以在项目中混合 json_serializable 和 built_value 模型?

问题如下,我有一个颤振项目,其中一些类使用built_value和一些类使用json_serializable。两者都可以单独工作,但使用非常不同的方式来序列化/反序列化 JSON。

built_value 使用 Serializers 做自己的事情,而 json_serializer 使用 dart:convert 的fromJson/toJson方法约定

而且我找不到一种简单的方法来组合这些。

我正在寻找的是这样的:

假设我有一个 @JsonSerializable() 类Person

和一个 built_value 类SomeAppState

似乎没有一种合理的方法来序列化/反序列化一个对象,SomeAppState因为 built_value 不关心 fromJson/toJson 并且似乎没有任何方法可以反过来做,因为 built_value 序列化程序不'生产Map<String, dynamic>

我是否被迫选择/或只是接受您不能在两者之间进行互操作,或者我是否缺少一些聪明的东西?

0 投票
0 回答
130 浏览

flutter - 使用 build_runner 时,显示未定义名称的错误 BuiltList

目前,我正在JsonDeserialize使用built_valueand进行嵌套build_runner。它在生成时显示错误serailize.g.dart。我该如何解决这种问题?我也放进built_collectionpubspec.yaml

这是生成的文件

原始文件很好。

在此处输入图像描述

我的用法是像这样解析 JSON。

这就是为什么,我准备了我的飞镖模型课程来关注

在此处输入图像描述

在此处输入图像描述

0 投票
1 回答
150 浏览

flutter - BuiltValue 不是“BuiltRegister”错误类型的子类型

我只是学习如何BuiltValue在颤振中使用。Chopper在使用这个库之前,我实现的 web服务可以正常工作。

现在更改为使用后BuiltValue出现错误,我无法解决此问题

错误是:

_InternalLinkedHashMap' 不是“BuiltRegister”类型的子类型

我的服务器只获取mobile_number,这是 json 响应结构:

我用结构构建BuiltRegister寄存器:

build终端中的命令返回成功,我没有任何问题,现在这是我的Chopper实现:

BuiltValueConvert拦截器实现Chopper

这就是我想如何连接到服务器、发送和获取结果:

当我尝试打印响应时出现错误