Moshi 忽略 Kotlin 中的字段

Moshi ignore field in Kotlin

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

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

private transient String your_variable_name;

但我找不到在 Kotlin 中完成此操作的正确方法。

使用 @Transient 注释。

@Transient
private val your_variable_name: String

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

Kotlin + 改造 + Moshi

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

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

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

生成的 Json 将是

user{
"id": "some id"
}

这是另一种方式

@field:Json(ignore = true)
val your_variable_name: String