2012-01-26 8 views
0

私はjst.ejsテンプレートを生成するレールバックボーンプロジェクトを持っています。EJSの表示ヘルプヘルパー

私はいくつかのビューヘルパーをそこに含めたいと思っていますが、EJS関数またはJST関数をそのテンプレートファイルに含める方法を考えています。誰かが非常に基本的な関数を含むようにejs.jstテンプレートで読むことができるようにする方法の非常に簡単な説明を提供できるなら、私は非常に感謝しています。

私はJST & EJSにハッキングしようとしました。さらに、裸のjavascript関数を使用していますが、何も喜んでいません。以下の例の試み:

例:

# helpers.js.coffee 
console.log('yes, this file is being called from the app') 
helloWorld:() -> 
    console.log "Hello, world!" 

# app/assets/javascripts/backbone/templates/project/new.jst.ejs 
<%= helloWorld() %> 

(キャッチされないにReferenceErrorを返します)感謝

任意のアイデア。乾杯。

答えて

0

coffeescriptは各.coffeeファイルの周りにクロージャー()を置くので、それをwindowに添付する必要があります。スコープの問題を処理する方法の良い例は、underscore.jsのような一般的なjs/coffeeユーティリティです。彼はCommonJSの慣行に準拠させ、彼の世界で使用できるようにするために彼の_機能をグローバルに利用するために、var root = thisexportsを使用しています。

書籍CoffeeScript: Accelerated JavaScript Developmentには、この非常にトピックに関する章(第4章)と、CoffeeScriptに関するちょっとした本です。現代の世界がjavascript上でどこにあるのかを多く説明しています。

関連する問題