如何在视图页面中使用Play框架和Scala显示图像

问题描述 投票:7回答:2

使用Play框架,我试图在视图页面中显示图像friend_request.png

这是我的代码,但图片没有显示:

<img src=@("images/friend_request.png") width="28" height="22" />
scala playframework
2个回答
10
投票

我假设你想要包含静态图像,因为你在谈论Scala,我假设你正在使用Play Framework 2。

图像在标准项目布局中的适当位置应为public/images/friend_request.png。然后你可以参考图像:

<img src="@routes.Assets.at("images/friend_request.png")" width="28" height="22" />

有关资产(缓存时间等)的更多信息,请参阅Play Framework documentation


3
投票

Skyr's answer不适用于我的Play版本(2.4.2)。使用它会产生以下编译错误:

value at不是controllers.ReverseAssets的成员

咨询了documentation后,这对我有用:

<img src="@routes.Assets.versioned("images/yourImage.png")">

yourImage.pngpublic/images


如果您想通过缓存和压缩图像(以及Web应用程序的所有其他资源)来加速页面加载,请尝试以下操作:

确保您的plugins.sbt包含以下条目:

addSbtPlugin("com.typesafe.sbt" % "sbt-rjs" % "1.0.7")
addSbtPlugin("com.typesafe.sbt" % "sbt-digest" % "1.1.0")
addSbtPlugin("com.typesafe.sbt" % "sbt-gzip" % "1.0.0")

然后,在你的build.sbt中,添加:

// Apply RequireJS optimizations, create a checksum, and zip each asset
pipelineStages := Seq(rjs, digest, gzip)
© www.soinside.com 2019 - 2024. All rights reserved.