根据冻结文档:
但是,我在代码中使用了=>,如下所示:
=>
factory ProductLineDTO.fromJson(Map<String, dynamic> json) => _$ProductLineDTOFromJson(json['node']);
然而我得到了我不需要的toJson。有什么想法可以阻止Freezed生成toJson函数吗?
j1dl9f461#
当作者说“如果工厂使用=〉,Freezed将只生成fromJson”时,他并不意味着它将显式地生成“fromJson”而避免生成“toJson”。他指的是代码只有在使用“=〉”的情况下才能工作,所以如果没有使用“=〉”,它只会抛出一个错误,而不会生成任何东西。另外,为什么不在生成“toJson”后将其删除,我是否遗漏了什么?
hgqdbh6s2#
可能晚了,但是根据问题和文档,停止生成toJson或fromJson的正确方法是使用@Freezed()而不是@freezed比如说
toJson
fromJson
@Freezed()
@freezed
@Freezed(toJson: false, fromJson: true)
请参见@Freezed源文件甚至是《冻结》的作者雷米·鲁塞莱提到的问题
2条答案
按热度按时间j1dl9f461#
当作者说“如果工厂使用=〉,Freezed将只生成fromJson”时,他并不意味着它将显式地生成“fromJson”而避免生成“toJson”。
他指的是代码只有在使用“=〉”的情况下才能工作,所以如果没有使用“=〉”,它只会抛出一个错误,而不会生成任何东西。
另外,为什么不在生成“toJson”后将其删除,我是否遗漏了什么?
hgqdbh6s2#
可能晚了,但是根据问题和文档,停止生成
toJson
或fromJson
的正确方法是使用@Freezed()
而不是@freezed
比如说
请参见@Freezed源文件
甚至是《冻结》的作者雷米·鲁塞莱提到的问题