2012-02-08 71 views
4

我的背景是jQuery/require.js/backbone.js!
爲了拓寬視野,我正在仔細研究Dojo。
在backbone.js中,您有視圖組件。有些人寧願說它是一個控制器。
所以,如果我想建立一個新的頁面控制器,我生成一個新的backbone.js視圖,我有一個非常好的和有用的方法可用的集合。 。
我發現了一個道場1.7教程頁面級控制器(http://dojotoolkit.org/documentation/tutorials/1.7/recipes/app_controller/)但我很失望地得知,頁面作者做了從無到有整個控制器 他寫的總結:尋找一個Dojo MVC控制器類作爲基礎

控制器可能是從一個類派生的。

也許,保持教程的簡單性,他沒有提到您通常使用的這種現實世界中控制器的基類。
還是真的沒有基類你可以使用? 也許有有許可證的第三方課程?
非常感謝提前
沃爾夫岡

更新:
謝謝你,克里斯·米切爾,你的答案。我很高興聽到Dojo客戶端mvc有很多開發。
因此,jQuery/jQuery UI/backbone.js堆棧在這個頁面控制器中可能還有一小步。但dojo是一個非常棒的框架。
據我所知,我猜想,與MVC WIDGETS dojo相比,jQuery UI提供的功能更多:
Dojo小部件已經具有小部件模板,而jQuery UI目前沒有此功能。
如果您查看jQuery Ui小部件的源代碼,則不會出現這種分離,HTML代碼段是使用Javascript「構建」/連接的,這很難維護。
根據Boris Moore的博客文章(http://www.borismoore.com/2011/10/jquery-templates-and-jsviews-roadmap.html),jQuery UI團隊可能會朝相同的方向發展。
一般來說,在jQuery領域,我還沒有看到很多mvc小部件:
一個例子是jQuery自動完成插件與backbone.js模型 (http://www.planbox.com/blog/news/updates/ jQuery的自動完成功能 - 插件換骨幹-js.html)。

回答

2

這是一個非常有趣的問題。

我一直在使用Dojo很長一段時間(5年以上),而且我不知道套件中的任何內容。

在客戶端JS中實現一個全面的MVC模式似乎是一個相對較新的想法(至少在過去的幾年裏我只聽說過)。但它確實看起來不錯。

這似乎與Dojo特別相關,因爲它支持大規模的單頁應用程序。我的意見是,這是Dojo閃耀的地方。管理整個客戶端應用程序的一致的,基於MVC的方式似乎是有益的。

其中一件事情最終將由應用程序構建,爲什麼不使它成爲官方?在郵件列表


更新

有人提到有一個dojox.mvc項目。

+0

我認爲這個問題沒有在這裏得到回答......他要求具體實施。 – 2012-03-13 16:57:46

+1

我剛把問題發佈到dojo郵件列表 - 希望有人在那裏有更好的答案。 – mtyson 2012-03-13 17:23:54

3

您鏈接的教程中描述的MVC模式僅僅是如何使用Dojo完成MVC的一個示例。

Dojo社區正在研究兩個新的子項目,以正式確定Dojo對MVC的「官方」方法。請記住以下幾點:在1.7中,這些子項目目前是實驗性的,基於早期反饋和在許多項目中使用,API將在1.8時間段內發生變化。

正在開發的第一個軟件包是dojox/mvc。這個包處理視圖和模型之間的數據綁定問題。

開發中的第二個包是dojox/app。該軟件包處理應用程序級控制器問題,如查看導航,查看生命週期,在視圖之間共享模型數據。

這兩個軟件包旨在一起工作,但使用任何一個都是可選的。

要查看使用Dojo/MVC的一個很好的例子,看看詹姆斯·托馬斯最近的一篇博客: http://jamesthom.as/blog/2012/02/26/dojomvc-models/

待辦MVC應用程序,詹姆斯貢獻了Dojo例子是理解之間的差異的好方法現代圖書館之間的客戶端mvc方法。

在這兩個項目中都有很多發展,樣本應用程序在1.8時間範圍內進行。