gpt4 book ai didi

javascript - ExtJS 4——关于MVC架构的问题,使用MVC进行组件开发

转载 作者:搜寻专家 更新时间:2023-11-01 05:07:11 26 4
gpt4 key购买 nike

我对 Extjs 4 MVC 架构的问题很少,非常感谢一些提示或示例。

  1. Controller 如何与其 View 相关联? Controller 引用其 View 的模式是什么?

  2. Controller 是否应该是应用程序实例的全局 Controller ?我只看到显示 Controller 被应用程序实例加载的示例,但我从未见过 Controller 是某些子组件的一部分。是不是说 MVC 不适用于组件类?示例:我想构建一个列表搜索组件,它由一个网格、一个搜索条件面板和几个控件/菜单组成。 MVC 对于实现该控件的内部逻辑非常有用,但 extjs API 表明这不是受支持的场景。

  3. Extjs 4 (Ext.require) 中有一个很好的动态加载功能。但它是否应该以某种方式与 MVC 架构一起工作?是否支持动态加载 View 和 Controller ?与上一个问题一样,我只看到在应用程序启动时预先加载所有 Controller 、模型和 View 的示例。我正在考虑根据用户的操作加载 View ,并且只有在用户完成操作后才知道该 View 的名称 - 如何加载该 View ,它的 Controller 又如何?

最好的问候RG

最佳答案

  • 我推荐 Supervising Controller图案。本质上, View 没有逻辑,除了简单的数据绑定(bind)(想想组合框和网格),所有事件处理都在 Controller 中(例如:用户单击按钮刷新计算)。该模型处理所有数据逻辑(例如:计算贷款的每月还款额)。 Controller 可以使用 form.loadRecord() 将模型加载到 View 中,并使用 form.updateRecord() 将表单值保存到模型中。

  • Controller 应该没有状态:没有用户定义的属性,只有事件处理程序。这样,一个 Controller 可以同时处理多个 View 实例。您将需要一些技巧来获取对 View 的引用(通过第一个参数),但我没有遇到任何问题。

  • 您可以在启动时加载所有 Controller 。只需确保连接并最小化文件即可。

关于javascript - ExtJS 4——关于MVC架构的问题,使用MVC进行组件开发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8201892/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com