0

昨天一位高级开发人员告诉我有关 widgets-events-sandbox-mvc 架构的信息(谢谢)。

小部件具有集合、模型、控制器、视图......并且视图发生的事件通过沙箱传达给页面上的其他小部件,并且它还传递与该事件相关的所需模型,以便其他小部件可以采取行动因此。

我正在构建与Zillow 的地图搜索非常相似的东西,并且“搜索”区域需要与“结果”区域进行通信。再加上“结果”小部件需要与 Leaflet.js 进行通信,并时不时保持通信以对 maptiles 采取行动。

我需要一些可以帮助我处理事件的东西,为我提供一个沙箱,这样我就不必自己构建它,给我一种将 REST 返回的数据转换为集合的好方法。

我看过 Backbone,但它需要我建立自己的沙箱,尽管它的集合和事件应该可以帮助我。

Can.js 宣称“对学习者来说很容易”,但我还没有看到任何类似沙盒的东西。

我对 JS 的经验水平:在 DOM 上编写 sphagetti jQuery 调用来做一些闪亮的事情。以前从未使用过 RequireJS 或类似的东西。我已经阅读并理解了“权威指南”的第一部分,所以我理解了 JS 对象的核心概念。我知道“Laravel”,它是一个类似 Rails 的服务器端 PHP 框架。

我会继续寻找这方面的信息,如果我能根据我的经验提出建议,我将不胜感激。

多谢!

4

1 回答 1

0

首先想想你是否真的需要它。

如果您不必在多个应用程序上重用小部件,那么这种模式毫无意义,只会使您的整个应用程序复杂化。

CanJS 类似于经典的 MVC 框架,并且不提供沙箱,但您可以通过继承实现类似的行为,例如,任何控制器(或视图)都可以托管到其他控制器(小部件)并与它们通信。

如果你真的喜欢沙盒模块,看看AngularJS

于 2013-02-16T18:28:38.787 回答