Я использую библиотеку lukasjapan / koreander вместе с версией, поддерживающей ktor, и когда я вызываю переменную topbar ViewModel (Res class) из файла kor, она экранируется от html String.
Вот как я вызываю ktor для обслуживания веб-страниц:
suspend fun main() = coroutineScope<Unit> {
System.setProperty(SimpleLogger.DEFAULT_LOG_LEVEL_KEY, "TRACE")
embeddedServer(
Netty,
port = 80,
module = Application::module
).apply { start(wait = true) }
}
data class Res(val topbar: String)
fun Application.module() {
install(KoreanderFeature)
routing {
get("/") {
val text = javaClass.getResource("/templates/topbar.kor").readText()
val resource = Res(Koreander().render(text, Any()))
call.respondKorRes("/templates/index.kor", resource)
}
}
}
Это мой файл topbar.kor: Это просто для тестирования, поэтому я делаю его просто маленьким.
.navbar-custom
%ul.list-unstyled.topnav-menu.float-right.mb-0
%li.d-none.d-sm-block
%form.app-search
Это мой файл index.kor:
%html
%head
%body
%p.hello Hello World!
$topbar / <- problem here, this has escaped html, browser interpret it as text
Это то, что отображается на браузер: Как мне удалить html здесь, чтобы браузер интерпретировал его как действительный html и отобразил его там?