マークアップビルダーから親要素をメソッドに渡す
-
29-10-2019 - |
質問
私はグレイルにカスタムタグリブを持っています、そして、私はいくつかのダイナミックなフォームを駆動するためにマークアップビルダーを使用しています。このフォーム作成コードの一部を独自のクラス/メソッドに引き出して、再利用できるようにする必要があります。これらの他のクラス/メソッド内でMarkUpBuilderを使用できるようにしたいと思います。だから私は次のようなものを持っています...
def formContainer = new MarkupBuilder(out)
formContainer.form(...) {
table() {
tr() {
td() {
// here I want to call a method and pass a reference to td()
generateSomeFormData(this) // but this doesn't work.
}
}
}
}
TD()では、メソッドを呼び出したいのですが、TDへの参照を渡す必要があります。 「これ」はその要素を参照していないようです。
私の他の方法は次のように見えるかもしれません(ポイントを理解するために非常に一般的です)
generateSomeFormData(parentElement) {
parentElement.input(type:'text')
}
正しい解決策はありません
所属していません StackOverflow