标题标记在ScalaTags库中无法正常工作。
import scalatags.Text.all._
title("My Awesome Website")
我怎样才能让它发挥作用?
帮助文档/教程很方便地忽略了无处不在的标题标签。我希望开发者能够解决这个问题。
未按预期工作:
如果您查看如何使用link
,script
,head
,html
等标记,则title
标记的工作方式应相同。
出于某种原因,开发人员选择使用此标记ConcreteHtmlTag[Nothing]
而不是之前的标记类型ConcreteHtmlTag[String]
。同样奇怪的是,此标记位于Tags2
包而不是Tags
中, 毕竟是常用标记。
答案 0 :(得分:8)
这个似乎有效:
scala> scalatags.Text.tags2.title("test")
res7: scalatags.Text.TypedTag[Nothing] = <title>test</title>
似乎title
中的scalatags.Text.all
是标记属性(scalatags.generic.Attr
),而不是TypedTag
。无论这是否错位(或应该是TypedTag[String]
),我都不知道。也许它只是代码中的符号冲突。
明确的import scalatags.Text.tags2.title
应该有所帮助。
答案 1 :(得分:1)
您可以使用备用导入,而不是导入all
。
import scalatags.Text.short._
import scalatags.Text.tags2._
html(
head(
title("Your Title Here")
),
body(
)
)
更多示例位于文档的Managing Imports部分。
答案 2 :(得分:0)
替代
import scalatags.Text.all.{title=>titleAttr,_}
import scalatags.Text.tags2.title
如果你使用 scalatra,你也会想要保护头部
import scalatags.Text.all.{head=>headTag, title=>titleAttr,_}
import scalatags.Text.tags2.title