当我运行时flutter pub run build_runner build --delete-conflicting-outputs,我收到此错误:
Deprecated. Use `dart run` instead.
[INFO] Generating build script completed, took 169ms
[WARNING] ../../../.pub-cache/hosted/pub.dev/built_value_generator-8.6.1/lib/src/dart_types.dart:65:21: Error: 'InvalidType' isn't a type.
if (dartType is InvalidType) {
^^^^^^^^^^^
../../../.pub-cache/hosted/pub.dev/built_value_generator-8.6.1/lib/src/value_source_class.dart:497:20: Error: The getter 'name2' isn't defined for the class 'NamedType'.
- 'NamedType' is from 'package:analyzer/dart/ast/ast.dart' ('../../../.pub-cache/hosted/pub.dev/analyzer-5.7.1/lib/dart/ast/ast.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'name2'.
if (type.name2.lexeme == 'Built') {
^^^^^
[INFO] Precompiling build script... completed, …Run Code Online (Sandbox Code Playgroud) built_value生成.g.dart代码,但文档没有给出任何提示,我们是否应该将它们添加到我们的 git 存储库中。
我认为我们应该,所以克隆我们的 repo 的开发人员可以启动并运行,而不必重新生成代码......但有些人说永远不应该提交生成的代码,那么,有什么建议built_value?
在我连接到服务器的应用程序中,返回此输出:
"usertags": {
"in": [
{
}
]
},
Run Code Online (Sandbox Code Playgroud)
那in是 dart 关键字,我不知道如何逃避它以从中获取数据,但出现此错误:
错误:需要一个班级成员。
abstract class BuiltUserTags implements Built<BuiltUserTags, BuiltUserTagsBuilder> {
BuiltList<BuiltIn> get in;
BuiltUserTags._();
factory BuiltUserTags([updates(BuiltUserTagsBuilder b)]) = _$BuiltUserTags;
static Serializer<BuiltUserTags> get serializer => _$builtUserTagsSerializer;
}
Run Code Online (Sandbox Code Playgroud) 我正在使用一个对其 json 属性使用 lowercase_with_underscores 命名约定的 api:
{
"user_id": 0,
"full_name": ""
}
Run Code Online (Sandbox Code Playgroud)
我的built_value 类是:
abstract class User implements Built<User, UserBuilder> {
//...
@BuiltValueField(wireName: "user_id")
int get userId;
@BuiltValueField(wireName: "full_name")
String get fullName;
//...
}
Run Code Online (Sandbox Code Playgroud)
有没有办法更改所有built_value类的built_value序列化器命名约定,以便它自动将my_propertyjson分配给myPropertybuilt_value模型,而不是用于BuiltValueField(wireName: "my_property")每个属性?
尝试使用内置值生成器时出错
这是我得到的错误。
[INFO] Running build...
[INFO] Generating SDK summary.
[SEVERE] built value generator:built value on lib/json_parsing.dart:
Bad state: Unexpected diagnostics:
C:\src\flutter\bin\cacheldart-sdk\lib\core\uri.dart:3259:39 - Expected an identifier.
[SEVERE] built_value_generator:built_value on lib/json_parsing.dart:
Bad state: Unexpected diagnostics:
C:\src\Flutter\bin\cache\dart-sdk\lib\core uri.dart:3259:39 - Expected an identifier.
[SEVERE] built_value_generator:built_value on lib/json_parsing.dart:
Bad state: Unexpected diagnostics:
C:\src\flutter\bin\cache\dart-sdk\lib\coreluri.dart:3259:39 - Expected an identifier.
Run Code Online (Sandbox Code Playgroud)
我用来运行内置值生成器的类
import 'package:built_value/built_value.dart';
part 'src/json_parsing.g.dart';
abstract class Article implements Built<Article, ArticleBuilder> {
Article._();
factory Article([void Function(ArticleBuilder) updates]) = _$Article;
}
Run Code Online (Sandbox Code Playgroud)