29

我想知道在使用 Moshi 时如何忽略 Kotlin 类字段。

我找到了 Java 的这个答案(Moshi ignore field),这表明使用关键字 transient 如下

private transient String your_variable_name;

但是我找不到在 Kotlin 中完成这项工作的正确方法。

4

3 回答 3

50

使用@Transient注释。

@Transient
private val your_variable_name: String

文档在这里:https ://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/-transient/index.html

于 2017-11-18T16:43:20.187 回答
3

Kotlin + 改造 + Moshi

如果您想有条件地忽略字段,可以将其设置为 null。

data class  User(var id: String,  var name: string?)

val user = User()
user.id = "some id"
user.name = null

生成的 Json 将是

user{
"id": "some id"
}
于 2019-05-09T19:10:04.577 回答
0

这是另一种方式

@field:Json(ignore = true)
val your_variable_name: String
于 2022-02-22T15:06:32.387 回答