Scala.jsプロジェクトで新しいVertx Eventbusインスタンスを作成しようとしています。私が何をしていても、onopen関数でハンドラを登録しようとすると、INVALID_STATE_ERRを取得します。Vertx Scala.jsを使用したEventbusクライアント
オンオープンが時期尚早に発射されているようです。
例コード: Eventbus.scala:次に
@js.native
@JSImport("vertx3-eventbus-client",JSImport.Default)
class Eventbus(url:String) extends js.Any{
def registerHandler(address:String,callback:
(js.Dynamic,js.Dynamic)=>Unit): Nothing =js.native
var onopen:Unit=js.native
}
は、私のアプリから、私はそれを呼び出す:onopen
の
val eb = new Eventbus("http://localhost:8080/eventbus")
eb.onopen={
println("opening")
eb.registerHandler("activity-updates", (err, mess) => {
val message = mess.body.toString
println(message)
})
}
ありがとうございます!しかし、なぜそれはすぐに実行されたのですか? – Anton
私は答えを更新しました。 – gzm0
ありがとう、非常に便利です。 – Anton