playframework - nullary 方法不允许使用参数 apply: ()play.twirl.api.HtmlFormat.Appendable in object main
问题描述
1@()
2
3@main("breakfast") {
4<h1 class="text-center">Breakfast recipes</h1>
5
6<div class="alt-prg row">
7 <div class="col-md-4 col-sm-12">
有没有人遇到过这个错误。一切正常,现在无法编译
main.scala
@(title: String)(content: Html)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Online Shop - @title</title>
<!-- Bootstrap Core CSS -->
<link rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
integrity="sha384-
Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm"
crossorigin="anonymous">
<link href="https://fonts.googleapis.com/css?family=Open+Sans"
rel="stylesheet">
<!-- Custom CSS -->
<link href="@routes.Assets.versioned("stylesheets/main.css")"
rel="stylesheet" />
</head>
我现在添加了 main.scala 文件,看看我是否有明显的错误。
Breakfast.scala 文件中的代码
@()
@main("breakfast") {
<h1 class="text-center">Breakfast recipes</h1>
<div class="alt-prg row">
<div class="col-md-4 col-sm-12">
<div class="rowImage"><img
src="@routes.Assets.versioned("images/spotato.jpg")" alt="Alternate Text" />
</div>
</div>
<div class="col-md-8 col-sm-12 text-right">
<h4>Sweet potato, Egg & Turkey Bacon</h4>
<p>
Lorem ipsum dolor sit amet, eum diceret vivendo ne, ei
harum prompta tacimates mel. Te eum solet graeco maluisset,
ius id malorum voluptatum. Mei vero suavitate ad, quo paulo
suavitate te.
Eum id vidit deleniti appetere, modo stet dissentiet no usu. Ad his
clita debitis
splendide, eleifend adversarium an eam, ea usu singulis omittantur
</p>
<a class="btn btn-primary" href="@routes.Assets.versioned("recipes/Sweet
Potatoe,Egg _ Turkey Bacon.docx")">Download Recipe</a>
</div>
</div>
你能在这里看到任何可能导致问题的东西吗?
解决方案
一般来说,编译错误no arguments allowed for nullary method apply
表明我们正在将一个参数传递给apply
不接受任何参数的方法。例如,以下
object A {
def apply(): String = ""
}
A(3) // compiler sees this as A.apply(3)
给出编译错误
no arguments allowed for nullary method apply: ()String in object A
在您的情况下,类似的错误
no arguments allowed for nullary method apply: ()play.twirl.api.HtmlFormat.Appendable in object main
似乎表明存在main.scala.html
具有以下签名的 Twirl 模板
@()
<html>
...
</html>
Twirl 将其转换为main
类似的对象
object main extends BaseScalaTemplate {
def apply(): play.twirl.api.HtmlFormat.Appendable = {
...
}
}
并且正在从其他地方调用,例如控制器或另一个 Twirl 模板,其参数错误地传递给其apply
方法。例如,如果我们这样index.scala.html
调用main
@()
@main("breakfast")
然后我们得到你的编译错误
[error] example/app/views/index.scala.html:3: no arguments allowed for nullary method apply: ()play.twirl.api.HtmlFormat.Appendable in object main
[error] @main("breakfast")
推荐阅读
- vue.js - “[Vue 警告]:未知的自定义元素:...”错误,当使用带有 vue-cli-plugin-vuetify 的 vuetify UI 组件时
- excel - VBA为什么此代码显示“没有If错误的Else”?
- azure - Azure APIM 中是否有任何中央存储库来保存保留定义、策略等?
- sophoslabs-intelix - 我应该如何在 SophosLabs Intelix 恶意软件和生产力 URL 查找 API 中指定 URI?
- python - 如何将上传的html文件转换为pdf?(django休息框架)
- python - 具有两种不同输入样本大小的 Keras 多任务学习
- python - ValueError:在 Python 中使用 Geocoder 时,位置应该是一个字符串
- macos - 如何使用 __import__ 导入另一个文件夹中的文件?
- r - 如何使用谐波回归器在 ARIMA 中找到最大傅立叶项数?
- javascript - 根据输入将字符串分解为多个对象