galvani / coffee-closure
0.2.4
2013-04-06 12:45 UTC
Requires
- bolinfest/coffee-script: 1.1.*
- symfony/symfony: >=2.1
This package is not auto-updated.
Last update: 2024-09-14 13:23:24 UTC
README
Symfony 2 扩展,支持 CoffeeScript 和 Google Closure
本包依赖于 Michael Bolin 的 coffee-script 编译器
安装
将这些行添加到 composer.json 中
"repositories": {
"bolinfest/coffee-script": {
"type": "package",
"package": {
"name": "bolinfest/coffee-script",
"version": "1.1",
"source": {
"url": "https://github.com/bolinfest/coffee-script.git",
"type": "git",
"reference": "origin/1.1.0"
}
}
}
}
在 AppKernel 中注册扩展
new Galvani\CoffeeClosureBundle\CoffeeClosureBundle()
将配置选项添加到配置文件中
coffee_closure:
bin: "/usr/bin/env coffee"
closure: "src/Galvani/PocketBoyBundle/Resources/public/js/"
src: "src/Galvani/PocketBoyBundle/Resources/public/coffee"
bundles: [ "GalvaniPocketBoyBundle" ]
该扩展将扫描 Resources/public/coffee 目录,并将所有 .coffee 文件编译到 Resources/public/js 目录
应用程序入口点的示例,需要放在 Resources/public/js 中
app.js
goog.provide('app.start');
goog.require('goog.dom');
goog.require('pocketboy');
app.start = function() {
var pocketboyApplication = new pocketboy();
pocketboyApplication.start();
};
// Ensures the symbol will be visible after compiler renaming.
goog.exportSymbol('app.start', app.start);
在 html 中简单添加
<script>goog.require('app.start'); app.start();</script>
使用 assetic 的 twig 示例
<script src="{{ asset('bundles/galvanipocketboy/js/closure-library/closure/goog/base.js') }}"></script>
<script src="{{ asset('bundles/galvanipocketboy/js/deps.js') }}"></script>
<script src="{{ asset('bundles/galvanipocketboy/js/app.js') }}"></script>