私はwindow#postMessage
ハンドラで異なるイベントをマッチさせたいですが、ネイティブの特徴と一致させることはできません。だから、どのように私はこの問題を解決することができます:scalajsでevent.dataをパターン化する方法
@js.native
trait XY extends js.Object {
val x: AnyVal = js.native
val y: AnyVal = js.native
}
@js.native
trait DataEvent extends js.Object {
val c: String = js.native // chart
val s: String = js.native // dataSet
val d: XY = js.native // xy data
val x: Seq[XY] = js.native // eXtra data
}
object ChartApi extends JSApp {
def receiveMessage(event: Any): Unit = {
event match {
case DataEvent => ???
case _ => println("else")
}
println(s"lala $event")
}
def main(): Unit = {
// add window event handler
dom.window.addEventListener("message", (event: MessageEvent) => receiveMessage(event.data), false)
println("Hello world!")
}
}
を私は別のiframe内の別のチャートを持っていると私は、またはのpostMessageを経由して「データクリア」「このデータを追加」などのイベントを送信する必要があります。