提问人:FailedUnitTest 提问时间:10/12/2023 更新时间:10/12/2023 访问量:19
不能使用提供的参数调用 HTML DSL 占位符插入
HTML DSL placeholder insert cannot be called with argument supplied
问:
我正在使用 Kotlin DSL 模板构建一些 Html 模板:https://ktor.io/docs/html-dsl.html#templates
但是,在我的方法中有些东西没有意义:
class LayoutTemplate() : Template<HTML> {
val titleText = Placeholder<FlowContent>()
val header = TemplatePlaceholder<FlowContent>()
val footer = TemplatePlaceholder<FlowContent>()
override fun HTML.apply() {
head {
title {
insert(titleText)
}
}
body {
insert(HeaderTemplate(), header)
h1 {
insert(titleText)
}
div {
id = "content"
insert(content)
}
insert(FooterTemplate(), footer)
}
}
}
class HeaderTemplate : Template<BODY> {
override fun BODY.apply() {
div {
id = "header"
h1 { +"Header" }
}
}
}
class FooterTemplate : Template<BODY> {
override fun BODY.apply() {
div {
id = "footer"
h1 { +"Footer" }
}
}
}
但是,我收到一个错误:以下函数都不能使用提供的参数调用。insert(HeaderTemplate(), header)
类似显示:insert(titleText)
类型不匹配。必需:流找到的内容:标题
有人可以帮助我不明白的事情吗?
答: 暂无答案
评论