【问题标题】:Which is the client side JavaScript framework that is easy on the learner, but provides the evented architecture I need?哪个客户端 JavaScript 框架对学习者来说很容易,但提供了我需要的事件架构?
【发布时间】:2013-02-01 04:59:14
【问题描述】:

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

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

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

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

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

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

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

我会继续 look for info 讨论这个问题,如果我能根据我的经验提出建议,我将不胜感激。

非常感谢!

【问题讨论】:

    标签: client-side javascript-framework


    【解决方案1】:

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

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

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

    如果您真的喜欢沙盒模块,请查看AngularJS

    【讨论】:

    • 我觉得关闭事件小部件是错误的,除非它们是可重用的。我需要事件架构以便在页面的各个部分之间进行轻松通信。你能举一个模拟事件的控制器继承的例子(甚至是伪代码)吗?感谢您对 Angular 的推荐,如果您愿意,请随时填写更多理由。
    猜你喜欢
    • 2014-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多