ios - 没有单元返回类型的Kotlin多平台Lambda调用
<p>我有一个适用于Android和iOS的多平台Kotlin项目。通用模块中的功能编写如下:<br><br> <pre class="lang-py prettyprint-override"><code>fun test(successCallback: (String) -> Unit, errorCallback: (Error) -> Unit) {
successCallback("success")
}
</code></pre><br>Android功能用法:<br><pre><code>Common.test(successCallback = {
Log.d(TAG, it)
},
errorCallback = {
Log.d(TAG, it)
}
})
</code></pre><br>iOS使用功能:<br><pre><code>Common.test(successCallback: { it in
print(it)
return KotlinUnit()
}, errorCallback: { error in
print(error)
return KotlinUnit()
})
</code></pre><br>JVM世界似乎可以自行处理返回类型(单元)(无需返回任何内容),而您必须在iOS中返回<code>KotlinUnit()</code>。<br><br>我想在iOS上实现相同的目标(不使用<code>return KotlinUnit()</code>进行回调)</p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p>请参阅<a href="https://github.com/JetBrains/kotlin-native/pull/2968" rel="noreferrer noopener nofollow">https://github.com/JetBrains/kotlin-native/pull/2968</a>,它将在即将发布的Kotlin / Native版本中合并。</p>
<p style="font-size: 20px;">关于ios - 没有单元返回类型的Kotlin多平台Lambda调用,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/56216840/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/56216840/
</a>
</p>
页:
[1]