0

我有 100 个不同的 url,每个都指向纯 html 页面,我必须将这些纯 html 页面转换为 extjs 页面。所有页面的页脚和页眉都相同,但不同的纯 html 页面的中心部分不同。为了利用最大的代码,我想创建一个 EXTJS4.1.0 应用程序,它具有模型、视图、存储和控制器,但单独的 index.html、app.js 和 viewport.js。分开 index.html、app.js 和 viewport.js 的原因是,如果我不保留单个 index.html、app.js 和 viewport.js,那么我将无法为页面添加书签(因为用户和使用100 个不同页面的 100 个不同 url)所以基本上我将有 100 个不同的 app.js 和相应的 viewport.js(viewport.js)。

我的第一个问题是,我刚才提到的解决方案是正确的解决方案。

如果使用 autoCreateViewport: true,那么在 Extjs MVC 模式中,每个应用程序只能有一个 Viewport.js 文件是真的吗?

其次,如果您在 Ext.Application (在 app.js 中)使用 autoCreateViewport: false 并在启动方法中创建不同 Viweport 的实例,如下所示:

Ext.application({
    name: 'Panda',
    autoCreateViewport: false,
    launch: function() {
        Ext.create('Panda.viewport.ViewportOne')
    }
});

请注意,我创建了 ViewportOne 的实例,它是 100 个视口之一。使用此解决方案,我在运行应用程序时也遇到了故障(某些导航不起作用等)。是不是因为 extjs 不允许使用名称为 Panda.viewport.ViewportOne、Panda.viewport.ViewportTwo 等的视口?

如何在 Extjs 中创建带有书签页面的完全 MVC 风格的应用程序,这样每个页面都是同一个 extjs 应用程序的一部分(即它利用相同的模型视图、存储、控制器和动态加载)。

4

1 回答 1

0

我工作的公司有很多客户正在使用基于纯 html 和 javascript 构建的应用程序。每个用户只在该应用程序的一个页面上工作,他已在浏览器上添加了书签。我的任务是将那些普通的 html/javascript 页面升级到 Extjs 页面,这样用户就不必更新他们的书签了。

最后,我正在考虑在 Extjs 4.1.0 中创建单个应用程序,如果每个页面可以使用通用模型/视图/存储和控制器,它将有 100 个页面(index.html、indexOne.html 等用户将添加书签)。

所以基本上我的应用程序入口点会有所不同,但所有页面都将使用相同的模型/视图/存储/控制器。它更多的是一个架构问题。

希望这有帮助。

于 2012-06-29T18:08:30.707 回答