0

scala.js を w2ui jQuery ライブラリと連携させようとしています。しかし、フォームでリセット アクションを定義すると、動作が期待どおりになりません。

私のリセットアクションを処理するために。scalajs コードで次のようなものを定義します。

...
 actions = js.Dynamic.literal(
  reset = { form: W2Form =>
   form.clear()
  }: js.Function1[W2Form, Any],
...

ただし、リセットボタンをクリックするとエラーが発生します。

TypeError: this.refresh は関数ではありません
this.refresh();
^

生成された JavaScript コードを調べると、このエラーが発生する理由がわかります。

"actions": {
  "reset": (function(f) {
    return (function() {
      return f.apply__O__O(this)
    })
  })(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(form$2) {
    return (0, form$2["clear"])()
  }))),

これは、最後の行を手動で次のように変更することで修正できます。

  return (form$2["clear"])()

誰かが私が間違っていることを教えてもらえますか?

4

1 に答える 1