【问题标题】:ExtJS 4 Problem with MVC conceptExtJS 4 MVC 概念的问题
【发布时间】:2011-09-09 09:25:23
【问题描述】:

我正在尝试使用新的 MVC 概念,因此从 AccountManager 示例(示例/简单)开始。就我坚持本教程而言,一切正常,但我尝试对其进行一些扩展。

我在“Viewport.js”中定义了一个边框布局,并将一个标题组件(views/Header.js)分配给“north” 和一个选项卡面板(views/MainPanel.js),其中包含“views/user/List.js”作为选项卡。

到目前为止一切正常。

但现在我添加了另一个商店 (Profiles.js) 和模型 (Profile.js), 将代码中的引用更改为使用配置文件存储而不是用户存储。 我还更新了列定义、导入('requires')和所有相关的 es(至少我是这么认为的......)。

当我运行我的应用程序时,我在 Observable.js -> addManagedListener-> 'item is undefined' 中得到一个 js-error,当他尝试调用 'item' 的 on-method 时。

起初我努力寻找我在代码中犯的错误,但我找不到任何东西, 所以我开始玩了一下,发现, 只要我将views/中的文件夹'user'重命名为'profile',它就可以工作(当然我也必须修复代码中的一些引用)。

这种行为是错误还是故意的? 如果是这样,有人可以告诉我这是如何工作的吗?

非常感谢!

【问题讨论】:

    标签: javascript model-view-controller extjs extjs4


    【解决方案1】:

    问题是我必须为我的控制器提供对商店和模型的引用。 我从一开始就没有这样做,在我的控制器引用了视图之后,视图引用了商店,商店引用了模型。 所以我认为一切正常。

    但据了解,提供这些冗余信息似乎是强制性的,我可以忍受......

    【讨论】:

      【解决方案2】:

      ExtJS 根据您的模型/视图/控制器声明查找 Javascript 文件。

      即如果在你的控制器中告诉你有一个默认名为 Profile 的存储(通过 stores 属性),它将在 app_name/stores/Profile.js 处查找文件

      【讨论】:

        猜你喜欢
        • 2011-07-31
        • 1970-01-01
        • 2011-10-22
        • 1970-01-01
        • 1970-01-01
        • 2011-03-11
        • 1970-01-01
        • 1970-01-01
        • 2016-09-03
        相关资源
        最近更新 更多