AssetsCoffeeScript - opensas/Play20Es GitHub Wiki

Utilizando CoffeeScript

CoffeeScript es un pequeño y elegante lenguaje que se compila en JavaScript. Este proporciona una sintaxis más agradable para escribir código JavaScript.

Los recursos compilados in Play 2.0 se deben definir en el directorio app/assets. Estos se manejan por el proceso build, y las fuentes de CoffeeScript se compilan en archivos estándar de JavaScript. Los archivos JavaScript generados se distribuyen como recursos estándar en la misma carpeta public/ como otros recursos no administrados, lo que significa que no hay ninguna diferencia en el modo en que usted los utiliza una vez compilados.

Tenga en cuenta que los recursos administrados no se copian directamente en la carpeta public de la aplicación, pero se mantienen en una carpeta separada en target/scala-2.9.1/resources_managed.

Por ejemplo, un archivo fuente de CoffeeScript app/assets/javascripts/main.coffee estará disponible como un recursos JavaScript estándar, en public/javascripts/main.js.

Las fuentes de CoffeeScript se compilan de forma automática mientras se ejecuta el comando compile, o al actualizar cualquier página en el navegador mientras se ejecuta en el modo de desarrollo.

Los errores de compilación se mostrarán en el navegador:

Estructura

Aquí está un ejemplo de la estructura para utilizar CoffeeScript en sus proyectos:

app
 + assets
    + javascripts
       + main.coffee   

Se compilarán dos archivos JavaScript: public/javascripts/main.js y public/javascripts/main.min.js. El primero es un archivo legible útil en el desarrollo, y el segundo es un archivo miniaturizado que se puede utilizar en la producción. Usted puede utilizar cualquiera de los dos en su plantilla:

<script src="@routes.Assets.at("javascripts/main.js")">
<script src="@routes.Assets.at("javascripts/main.min.js")">

Opciones

La compilación de CoffeeScript puede ser configurada en el archivo Build.scala de su proyecto. La única opción admitida actualmente es el modo bare.

coffeeScriptOptions := Seq("bare")

Por defecto, el código JavaScript se genera en una función de alto nivel en un contenedor seguro, impidiéndole contaminar el ámbito global. La opción bare elimina esta funcion del contenedor.

Siguiente: Utilizando LESS CSS

⚠️ **GitHub.com Fallback** ⚠️