如何在 dojo mobile(自定义控制器)中最好地应用 MVC 架构?

Posted

技术标签:

【中文标题】如何在 dojo mobile(自定义控制器)中最好地应用 MVC 架构?【英文标题】:How to best apply an MVC architecture in dojo mobile (custom controllers)? 【发布时间】:2013-08-11 12:18:12 【问题描述】:

我对 Dojo 还是很陌生,我想知道一些构建 MVC 应用程序的最佳实践。我知道有像 dojox/app 这样的模块,但似乎这些模块是为更复杂的应用程序而设计的。

似乎最好的方法是制作自定义页面级控制器对象来处理所有页面逻辑,但我不太确定如何将这块放在拼图中。按照 MVC 架构在视图之间切换并通过它们传递参数的正确方法是什么。

我有一个包含列表项的概览页面,每个项都有自己的 ID。我想通过相应的项目 ID 导航到另一个页面,以便我可以在外部检索该项目的详细信息。这样做的正确方法是什么?

我可以直接使用按钮调用相应控制器(Page1 Controller 或 Page2 Details 控制器)上的方法并直接传递 listID 参数吗? 另一种方法是使用转换状态并在页面控制器中添加侦听器以转发到正确的页面。虽然我不太清楚在这种情况下如何传递参数.. ...有更好的解决方案吗?

任何人都可以对此有所了解吗?最新版本的 dojo (1.9) 似乎没有太多关于此的文档/示例。

谢谢!

【问题讨论】:

有不同的方法,我所看到的首选方法是使您的 webapp 中的每个页面都成为基于模板的小部件,这将为您提供一种 MVC 架构。您可以在演示文稿中使用模板,并且该小部件已经带有您可以扩展的创建和销毁方法。 奇怪的是,最佳实践,甚至例子都很少。制作小部件似乎是一种不错的方法,但我会采用其他方法.. Dojo 不是一个新框架,它非常奇怪。 【参考方案1】:

我会推荐 dojox/app,因为您已经在使用 dojo mobile。 上手非常简单,可用于简单应用或非常复杂的应用

看看这些资源:

https://github.com/csantanapr/dapp-examples/tree/master/dapp-request

https://github.com/csantanapr/dapp-boilerplate

http://dojotoolkit.org/documentation/tutorials/1.9/dojox_app/contactsList/

【讨论】:

感谢您提供 dojox.app 的最新链接。我仍然很好奇人们通常如何在没有 dojox.app 的情况下实现这一点。因为它目前似乎没有被广泛使用?

以上是关于如何在 dojo mobile(自定义控制器)中最好地应用 MVC 架构?的主要内容,如果未能解决你的问题,请参考以下文章

无法解析构造函数:“dojox.mobile.RoundRectCategory”

如何将自定义图像添加到按钮 (dojo 1.7)

如何在 file:/// 协议 (Cordova/Phonegap) 下使用来自 dojo 的自定义构建

如何使用 dojo 约束对象为我的 dojo TextBox 或 NumberTextBox 中的 IP 地址自定义文本输入字段

如何将自定义图像添加到按钮(dojo 1.7)

VS 2013 中的 Dojo 自定义模块智能感知