Osm*_*lez 7 flutter json-serializable freezed json-annotation
我的应用程序运行正常,但在 pub Upgrade --major-versions 之后,我在所有型号上都遇到问题。型号示例:
import 'package:app_220/models/Leads/LeadFieldModel.dart';
import 'package:flutter/foundation.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
import 'package:intl/intl.dart';
part 'LeadModel.freezed.dart';
part 'LeadModel.g.dart';
@freezed
abstract class LeadModel with _$LeadModel {
const LeadModel._();
@JsonSerializable(fieldRename: FieldRename.snake)
const factory LeadModel({
required int id,
int? formId,
@JsonKey(name: 'contact__first_name', defaultValue: '')
@Default('')
String contactFirstName,
@JsonKey(name: 'contact__last_name', defaultValue: '')
@Default('')
String contactLastName,
@JsonKey(name: 'contact__email', defaultValue: '')
@Default('')
String contactEmail,
@JsonKey(name: 'contact__phone', defaultValue: '')
@Default('')
String contactPhone,
int? staffId,
@Default('') String staffLastName,
DateTime? creationTime,
@Default('') String sourceUrl,
@Default('') String sourceIp,
@Default(0) int viewed,
List<LeadFieldModel>? leadData,
}) = _LeadModel;
factory LeadModel.fromJson(Map<String, dynamic> json) =>
_$LeadModelFromJson(json);
}
Run Code Online (Sandbox Code Playgroud)
问题:
The annotation 'JsonSerializable' can only be used on classes
The annotation 'JsonKey' can only be used on fields or getters
...
Run Code Online (Sandbox Code Playgroud)
为了使其能够在几周前的升级中工作,我在 pubspec.yaml 中为 json_annotation: '4.0.1' 和 json_serialized: '4.1.4' 设置了固定版本,但我想知道是否还有其他方法更新这些软件包没有任何问题。
我错过了什么,如何才能达到与使用冻结之前相同的效果?
归档时间: |
|
查看次数: |
7494 次 |
最近记录: |