1

我正在使用 Google Charts 和 Kotlin JS 创建交互式信息图表。这是来自Quick Start Page的片段。

var data = new google.visualization.DataTable();
<..>
var chart = new google.visualization.PieChart(document.getElementById('chart_div'));

这里使用了“new”关键字。我尝试使用 Kotlin 重写此代码。

val data = google.visualization.DataTable();
<..>
val chart = google.visualization.PieChart(document.getElementById('chart_div'));

但是发生了一个错误,说上面的行中缺少“new”关键字。所以 Kotlin to JS 编译器没有在它们应该在的地方添加关键字。这是编译好的 JavaScript 代码。

var data = google.visualization.DataTable();
<..>
var chart =  google.visualization.PieChart(document.getElementById('chart_div'));

在不使用 js() 函数的情况下,是否有正确的方法来避免错误?

谢谢你。

4

1 回答 1

2

没有添加关键字的原因new是因为google变量没有添加external关键字。有了这个,Kotlin 生成了正确的代码。

external object google {
    object visualization {
        class DataTable
    }
}
于 2019-11-12T16:14:07.747 回答