Is there a way to add html comment to kotlin HTML DSL like comment(“my comment”) that will result to <!-- my comment -->
. Currently i’m using unsafe { +"""<!-- my comment -->"""}
but it seems a bit off.
1 Like
You can add your own extension like
fun FlowContent.comment(text: String){
unsafe { +"<!--$text-->"}
}
Okay. Thank you very much.
You might want to ensure the text doesn’t contain -->
, which would end the comment prematurely. (Or do something to escape it)
fun FlowContent.comment(text: String) {
require(!text.contains("-->")) { "Comment text cannot contain '-->'" }
unsafe { +"<!--$text-->" }
}
1 Like
Okay, thank you very much.
HTML DSL contains a comment function Tag::comment
And if you want it as a tag consumer define
inline fun <T, C : TagConsumer<T>> C.comment(s: String) = onTagComment(s)
Usage:
fun main() {
System.out.appendHTML().div { comment("foo") }
System.out.appendHTML().comment("bar")
}
3 Likes