2012-02-10 77 views
5

通常我在jQuery世界中,我使用requirejs,backbone.js和jquery开发了一个wep应用程序。
为了拓宽视野,我也开始使用Dojo。
在我开始使用Dojo之前,我在几篇关于jQuery的博客中读到的语句如下所示:“如果您使用一些JS效果创建正常的网站,则可以使用jQuery,但对于Web应用程序的东西,你应该使用Dojo“。
所以,正因为如此,当我开始使用Dojo(1.7)时,我非常想知道它的Web应用程序开发解决方案。
让我感到惊讶的第一件事是,我没有找到mvc控制器组件的任何基类。在backbone.js中你有一个观点(很多人说backbone.js视图是一个控制器),这有很大的帮助。
现在,在我的mvc控制器组件中,我想呈现视图。我通过使用amd文本插件“加载”模板。对于简单的模板 - 我发现 - 你可以使用dojo.string.substitute。但是如果你想做一些更复杂的事情,你就不能使用它。
我知道,一位着名的javascript演讲者Rebecca Murphey,当她开始在这个生态系统中开发时,将Mustache.js引入了Dojo。
Dojo Web应用程序员在使用动态数量的行渲染列表时需要使用哪些Dojo本地解决方案,并且他们希望通过js模板来实现这一点?Dojo和模板解决方案

在下划线模板。当你想这样做,你写的东西就像在模板中的以下内容:

<div><%= lang_test %></div> <!-- static things --> 
<table> 
<% _.each(list, function(listitem){ %> 
<tr> 
<td><%= listitem.get('attr1') %></td> 
<td><%= listitem.get('attr2') %></td> 
</tr> 
<% }); %> 
</table> 

非常感谢
沃尔夫冈

更新:
谢谢mkriheli,你的答案。我也偶然发现了dojox.dtl!
我想我会用这个。
你提到你的首选处理方式是模板化的小部件。这是非常有趣的事情,WIDGETS作为页面控制器与TEMPLATING!

1)我的第一个JavaScript web 2.0 MVC页面控制器是一个很大的自定义jQuery UI小部件。我听说jQuery UI团队正在计划将模板集成到他们的小部件中。 我使用backbone.js迁移到jquery后转身离开了它。

2)据我所知,JavascriptMVC的Justin Meyer将jQuery UI widget工厂部分(jQuery UI小部件的基础部分)作为页面控制器使用。

3)马克Wubben在道场的conf谈到模板:他说:

这就导致了一个新的和有趣的方法编写Dojo小部件。它们可以变得更像控制器:处理DOM事件,实现应用程序逻辑和更新模型。该视图将自动反映更改。

回答

0

我知道你想要更强大的功能,但对于非常简单的基于替换的模板,可以使用dojo/_base_lang/replace,这很像dojox/dtl或Mustache的更简单形式。并有没有在Dojox(并没有完全支持)的好处。

相关问题