2011-03-09 38 views
0

我們正在使用Jammit進行靜態壓縮的Rails(3.0.3/1.9)以及它提供的所有其他前端產品。 我努力工作Javscript模板,以取代一些醜陋的前端代碼,但它看起來像默認JST編譯器無法處理Windows換行符:用Jammit gem for Rails編譯javascript模板?

assets.yml文件:

embed_assets: on 

javascripts: 
    plugins: 
    - app/views/**/*.jst 

當我_topicPreview.jst都在一行它編譯罰款:

<div class='TopicPreview <%= typeName %>'><div class='Title'> <%= summary %> </div><div class='Meta'> <span class='LastUpdate'> <%= updatedAt %> </span> <span class='PostCount'> |  <%= postsCount %>  Posts  | </span> <span class='LikeCount'> <%= likesCount %>  Likes </span> </div></div> 

該頁面加載和我有JST._topicPreview([JSON版本的專題])可用的方法。美麗。

雖然JST的一半吸引力在於可讀性/可維護性,所以我希望我的JST具有適當的格式。只要我在JST文件中添加換行符,頁面就會拋出Uncaught SyntaxError: Unexpected Token ILLEGALwindow.JST['_topicPreview'] = template('...[the escaped JST file]...')

在代碼跟蹤中,我可以看到它解析並轉義單引號,所以我很驚訝它無法處理換行符。

有其他人遇到過這個問題嗎? 是否有比修復模板生成代碼中的一些額外字符串更簡單的修復方法?

Meta: 我很新的JavaScript模板,但他們應該有自己的StackOverflow標記?

編輯

看起來這是一個已知問題未決修復合併到創業板上市。

Windows line breaks in Jammit JST compiler

回答