gpt4 book ai didi

kotlin-multiplatform - 如何处理 kotlin 多平台数据类中的注释?

转载 作者:行者123 更新时间:2023-12-05 02:05:17 25 4
gpt4 key购买 nike

最近我将我的 KMP 项目拆分为全栈项目和一个核心库(主要由公共(public)数据类组成),发现我需要在现在定义的其中一个数据类上使用 JVM 库中的注释在一个公共(public)模块中。

在 Kotlin 公共(public)代码中似乎不可能使用来自 Java 库的注解。

解决此类问题的可能方法是什么,最好避免通过 expect 声明此类数据类,然后在 actual 平台上重复其实现,但使用不同的注释?

最佳答案

你可以期望/实际它自己的注释。

比如说,如果你有这样的 JVM 注释,@Entity

你可以拥有像src/commonMain/Entity.kt这样的文件

  expect annotation class Entity()

并且在src/androidMain/Entity.kt

  actual typealias Entity = package.to.Entity

并在 src/iosMain/Entity.kt

  actual annotation class Entity()

现在您可以继续在您的公共(public)代码中使用它了

@Entity
data class Movies(
val title: String,
val release: Int
)

关于kotlin-multiplatform - 如何处理 kotlin 多平台数据类中的注释?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63688014/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com