2011-11-02 35 views
1

我已經構建了一個Backbone.js應用程序,用於完成所有繁重的工作,如模板,翻譯和數據加載,客戶端。 (應用程序基本上是教材的框架 - 視頻和交互式可視化 - 也確實到目前爲止還沒有包括任何顯著實時功能我應該爲我的單頁應用使用node.js嗎?

不過,我在琢磨,如果我最好用node.js的一些功能...?

SEO
是JSDOM或其​​他的Node.js庫成熟足以滿足渲染模板到客戶端?

桌面
在不久的將來,它是可以考慮的分發與本地運行Node.js的一個.exe /。應用程序?我應該看哪個框架?

翻譯/國際化
它是使用Node.js的用於查找翻譯和搭建譯者翻譯的儀表板是一個好主意?

數據庫
我應該也使用Node.js的查詢我的數據庫(可能的SQLite作爲我想在本地進行鏡像),爲用戶和其他數據或與PHP/Ruby的後端堅守?

總而言之,如果我堅持原來的客戶端方法,我會錯過什麼;我的JavaScript框架是否可以從早期的包含node.js中受益於教育材料的導航和交互?

+0

你的意思是「JSDOM或其​​他node.js庫足夠成熟,可以爲客戶端提供預渲染標記嗎?」?預渲染標記? – James

+0

@ 999:是的,這可能是一個錯誤的術語。我的意思是,我目前的做法是讓Backbone「使用模板庫」填充「html模板。我認爲做服務器端更合理,然後將其交付給客戶端,以便蜘蛛看到相同的內容..?請建議一個更好的術語,我將編輯我的帖子。 – dani

回答

3

SEO:我不是很確定你在找什麼,但是node.js有很多可用的模板引擎。您可以通過維基找到這些

https://github.com/joyent/node/wiki/modules#wiki-templating

或NPM(節點包管理器):

http://search.npmjs.org/

另外,還有一些框架,如Express.js包括使用模板的能力爲頁面提供服務,但模板引擎幾乎可以切換到任何包。

http://expressjs.com/

桌面:,你可以在這裏本地運行的節點實例檢查出鈦的應用。

http://developer.appcelerator.com/blog/2011/06/titanium-desktop-node-js-prototype.html

翻譯和數據庫:我不知道了一大堆有關的翻譯,但我認爲你需要一個數據庫來存儲您的翻譯和node.js中有談論許多能夠圖書館數據庫。這聽起來不像是一個node.js問題,而是數據庫問題的選擇。您可以選擇許多SQL和NoSQL解決方案。

您將決定是否使用node.js,因爲只有您知道項目的真實範圍。