![]() | |
| 開發者 | Justin B. Meyer, Brian Moschel |
|---|---|
| 编程语言 | JavaScript |
| 操作系统 | 跨平台 |
| 许可协议 | MIT License[1] |
| 网站 | www.javascriptmvc.com |
JavaScriptMVC 是一套開放原始碼的多樣化網際網路應用程式框架,以 jQuery 與 OpenAJAX 為基礎。JavaScriptMVC 利用 MVC 架構與工具擴展這些函式庫,以便開發與測試。由於 JavaScriptMVC 不需要任何伺服器端的配合,因此它可以和任何的網站服務介面與程式語言整合,如 ASP.NET、Java、Perl、PHP、Python 或 Ruby。
歷史#edit
JavaScriptMVC 的第一個版本是在2008年5月釋出。穩定版的 JavaScriptMVC 2.0 在2009年6月釋出,並以 jQuery 為基礎。主要開發目標為維持程式碼的簡短和專注在它獨特的功能上。3.0版本在2010年12月釋出。而從 JavaScriptMVC 中所獨立出來的 MVC 架構「CanJS」則在2012年4月釋出。
控制器#edit
控制器(Controller)是由許多函式所組成,這些函式會在適當的事件發生時被呼叫。函式名稱提供這些函式被呼叫時的描述。只要正確地命名函式,控制器就能夠辨認這些函式並在正確的時機呼叫它們。舉例來說:
$.Controller('TodosController',{
".todo mouseover": function(el, ev){
el.css("backgroundColor","red")
},
".todo mouseout": function(el, ev){
el.css("backgroundColor","")
},
"#create_todo click" : function(){
this.find("ol").append("New Todo");
}
});
在控制器中也可以處理 OpenAjax 事件,例如:
$.Controller('TodosController',{
"main.test subscribe": function(ev, publisherData){
// TODO: do something
},
"other.event subscribe": function(ev, publisherData){
// TODO: do something
}
});
視圖#edit
模型#edit
模型(Model)類別提供了組織應用程式資料層級的基本功能。
$.Model('Todo',{
findAll: '/todos',
findOne: '/todos/{id}',
create: '/todos',
update: '/todos/{id}'
destroy : '/todos/{id}'
},{});
測試#edit
JavaScriptMVC 還提供了一套完整的測試外掛,支援模型的單元測試,以及需要處理事件驅動結構的功能性測試。測試工具可以在 Rhino 引擎的命令列模式執行。
參考資料#edit
- ^ Javascipt MVC license. jupiterjs. [16 April 2012].
外部連結#edit
This article is mirrored from “JavaScriptMVC” on 中文 Wikipedia, revision 63133721, written by Wikipedia's contributors and licensed CC BY-SA 4.0. Editing it here creates a Quire copy with its own history.
Synced with Wikipedia revision 63133721 · just now
