【问题标题】:Basic dojo 1.7 simple web application with an elegant infrastructure (e.g dojo boilerplate)具有优雅基础设施的基本 dojo 1.7 简单 Web 应用程序(例如 dojo 样板)
【发布时间】:2012-06-12 20:24:53
【问题描述】:

我遇到了sample application with dojo 1.5,但这并不是我真正想要实现的:它根本不是模块化的。我想利用 amd 和各种设计模式(如 MVC)来拥有一个非常有组织的应用程序。不幸的是,dojo 社区和“示例”不太明显或不存在(与 Jquery 相比)。有很多关于特定 dojo 特性的各种实现的很酷的教程,但没有一个是解释如何为 dojo 项目创建一个简单(但同时也是复杂的)squeleton 的非常基础的教程。我遇到了dojo boilerplate project on github,并试图从那里开始,但我发现(作为初学者)很难实现诸如登录或基本界面之类的琐碎事情(并通过模块、事件处理、数据将所有这些分开) , ETC。)。我只是不想只使用一个 index.html 和一个 javascript 文件来制作一个 dojo 应用程序,我可以做到,但是对于维护和添加东西,这将是一团糟。通过这篇文章,我希望获得关于这个特定主题的一些信息,并可能为 dojo 创建一个关于如何启动一个真正的 Web 应用程序的教程。例如,应用mvc模式,我认为一个好的应用教程应该有一个登录示例(认证)和一个基本的模块化界面(比如某种主容器,并且在各种事件上,容器ui会随着不同的widget而改变) .我将在 github 上做一些事情,并在完成后发布。如果你之前完成了;)

谢谢。

【问题讨论】:

    标签: javascript model-view-controller dojo


    【解决方案1】:

    TodoMVCGitHub

    提供与使用 MV* 实现的相同 Todo 应用程序的项目 当今大多数流行的 JavaScript MV* 框架中的概念。

    它使用了dojox.mvc@PEM。这不是构建 Dojo 应用程序的典型方式,因为 dojox.mvc 刚刚于 2011 年 5 月 16 日发布,但值得一看。还有live demo和教程Creating Todo MVC in Dojo

    还可以查看Dojo Web Buildersource code(+ 文章Introducing the New Dojo Web Builder)。

    最后但并非最不重要的是Maqetta (sources at GitHub),这是可以找到的最复杂的 Dojo 应用程序。看特别是。在maqetta.core.client/WebContent/ 目录中。

    【讨论】:

    • 由于某种原因我没有遇到那个 TodoMVC,但我一定会看看它。我找到了这个,看起来也很酷github.com/rmurphey/dojo-demo
    【解决方案2】:

    也许你搜索的不够多? 道场 MVC:

    我只是不想只使用一个 index.html 和一个 javascript 文件来制作一个 dojo 应用程序

    但这基本上就是 Dojo 的用途和擅长的地方...... 如果你只是想在一个普通的旧 html 网站上制作可爱的动画,那就去 jquery,它更性感。

    现在,如果您想做一个“真正的 Web 应用程序”,那么 dojo 是正确的框架。但是您还必须学习如何使用它。

    【讨论】:

    • 我偶然发现了那些教程,实际上我已经阅读了所有教程。事情更多的是以一种优雅的方式将所有这些东西放在一起。也许,我读错了。这就是我从那里去的地方。我以 GWT 为例,他们给你一个蝙蝠的 squeletton 应用程序,然后就是“调整”和实现你的东西(例如设计模式)的问题。所以,它更像是,你如何创建一个可维护和组织 dojo 项目......这就是我选择 Dojo 而不是 jquery 的原因,新手很难开始(考虑到这种心态),但没有明确的例子。
    • 我明白你的意思。我知道这无济于事,但我开始意识到必须从头开始可以帮助您更快更好地理解事物的工作原理,而不是使用预制的小程序来调整和破解。虽然,你是对的,但它需要更长的时间并且学习曲线更陡峭。我会在 irc 上推荐 freenode #dojo chan。那里有很多人可以帮助您。
    • 我的意思是你也是对的。知道自己在做什么很重要。当您开始编写代码并看到直接的进展时,这会更有趣。谢谢你。我一定会在 irc 上来的 ;)
    【解决方案3】:

    构建示例应用程序教程存在一些问题。

    首先,您所描述的示例应用程序需要一个 Web 服务器来与之通信。 Dojo 与 Web 服务器无关,那么您为示例应用程序选择什么技术?其次,现在需要一台服务器才能使演示在线可用,或者有兴趣查看演示的人需要安装 Web 服务器。听起来很简单,但它是一个障碍,会阻止新手继续。

    其次,即使使用 Web 服务器,也有很多方法可以构建/构建 Web 应用程序。

    我认为一个好的应用教程应该有一个登录示例 (认证)和一个基本的模块化接口(比如某种 主容器,并在各种事件中,容器 ui 更改为 具有不同小部件的实例)

    从您发布的内容看来,您正在寻找一个单页应用程序。单页应用程序(例如 SEO)有缺点,创建示例单页应用程序需要让开发人员清楚使用示例的缺点是什么。它不是所有 Dojo/Web 应用程序的灵丹妙药。

    我在 Github 上有一个项目,当然它还没有准备好进入黄金时段,但你可以看看。这是一个使用 Java/Spring 作为后端服务器的单页应用程序。我距离查看 Spring Pet Clinic 示例还有几天的时间,该示例将演示一些功能。我还需要更新 wiki 以描述如何创建示例应用程序。

    https://github.com/cswing/evinceframework

    另外,我经常使用主题测试器来查看不同的小部件。不完全是您要查找的内容,但一些回答此问题的人可能会发现该链接很有用。

    http://archive.dojotoolkit.org/nightly/dojotoolkit/dijit/themes/themeTester.html

    【讨论】:

    • 你是完全正确的,但是例如可以使用 json 数据的简单示例(人工数据)应该部分解决服务器部分(因为我并不真正关心服务器部分,因为我根据我使用的语言理解得很好)。是的,你说得对,我正在寻找一个单页应用程序。谢谢您的答复。我会看看你的项目。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多