8

我正在 Play 2.1.0 中尝试使用 CoffeeScript 的第一步。我创建了一个新应用程序并将我的 CoffeeScript 文件 main.coffee 放在 app/assets/javascripts/ 中。

我希望在启动播放应用程序时(在播放控制台中输入“运行”),我的 CoffeeScript 将被编译并将生成的 main.js 放置在 public/javascripts 目录中。

但是在该目录中没有创建 main.js。我是否必须在其他地方添加一些配置?

4

2 回答 2

4

CoffeeScript 文档中所述:

请注意,托管资源不会直接复制到应用程序的公用文件夹中,而是保存在 target/scala-2.xx/resources_managed 中的单独文件夹中。

Assets您必须使用反向路由通过控制器访问它:

<script src="@routes.Assets.at("javascripts/main.js")">
于 2013-02-12T08:47:29.487 回答
1

文档所述:CoffeeScript sources are compiled automatically during an assets command, or when you refresh any page in your browser while you are running in development mode.

所以,如果你不在development mode,你应该使用assets命令手动编译你的 CoffeeScript。

在输入assets命令之前,请确保您已sbt-coffeescript通过在文件中添加以下行来将插件添加到项目中project/plugins.sbt

addSbtPlugin("com.typesafe.sbt" % "sbt-coffeescript" % "1.0.0")

通过添加上一行启用 CoffeeScript 编译后,进入项目的根目录并输入sbt命令。在sbt交互 shell 中,您可以输入assets命令,您将获得如下输出:

$ assets
[info] CoffeeScript compiling on 1 source(s)
[success] Total time: 4 s, completed May 30, 2015 9:43:29 PM

如您所见,CoffeeScript 编译成功。

于 2015-05-30T14:00:16.250 回答