2017-08-03 37 views
1

我使用jQuery在我的項目中使用ts2kt。基礎知識做工精細,但是,我無法弄清楚如何調用這個函數(我只是想傳遞一個回調的話):Kotlin JS用可選參數覆蓋'external'函數錯誤

fun done(doneCallback1: JQueryPromiseCallback<T>? = definedExternally /* null */, 
     vararg doneCallbackN: JQueryPromiseCallback<T>): JQueryPromise<T> 

JQueryPromiseCallback界面看起來是這樣的:

external interface JQueryPromiseCallback<T> { 
    @nativeInvoke 
    operator fun invoke(value: T? = definedExternally, vararg args: Any) 
} 

我試圖創建它的一個實例來傳遞這樣的:

0123:

done(object : JQueryPromiseCallback<Any> { 
    override fun invoke(value: Any?, vararg args: Any) { 

    } 
}) 

不過,我在調用函數得到一個錯誤

重寫「外部」可選parameters`功能

已生成也已經過時,並給了我,我不能想出一個過時消息的@nativeInvoke註釋:

使用內聯擴展功能與身體使用動態

我是否應該更正ts2kt生成的文件?如果是這樣,怎麼樣?我只是沒有覆蓋invoke方法的語法嗎?

+0

隨時糾正生成的文件,ts2kt是非常錯誤。但實際上,JQuery已經在kotlin標準庫中 –

+0

標準庫中的jQuery已被棄用,它似乎只包含它的一部分。 – zsmb13

回答