【问题标题】:How to Handle Page Reloads如何处理页面重新加载
【发布时间】:2012-08-03 13:55:15
【问题描述】:

据我了解,处理页面重新加载的“常规”方法是使用其控制器、视图和模型在 Web 堆栈上复制功能和表示。我希望能深入了解处理这些情况的其他(可能更好)方法。以及对以下两种方法的反馈:

  1. 因此在每个 Web(堆栈)应用程序页面上重新加载基于 js 框架的应用程序/套件 强制js框架处理所有路由和渲染

  2. 使用 Web 堆栈路由交互,然后使用主干 根据交互显示视图。

谢谢!

【问题讨论】:

    标签: javascript backbone.js pushstate sammy.js


    【解决方案1】:

    恕我直言,2. 方法是 Backbone 诞生的一种方法:)

    按照这种方法,我们将完成所谓的Single Page Application

    但是在中大型应用程序中实现这一点可能非常耗费精力。您必须处理复杂的Router,它必须负责初始化或替换元素,还必须注意内存泄漏和幽灵视图。您必须定义一个系统来刷新您的集合和模型,因为您在每个页面中重复使用它们,...

    因此,将这两种方法结合起来也是一个好主意。您可以将应用程序拆分为以下模块:ManagingUsersManagingPostsManagingMedia,为这些模块创建单页应用程序,其中包含 indexeditshow、...重新加载页面,如果您移动到另一个模块,页面将被重新加载,并与整个框架一起重新加载。

    【讨论】:

    • 我对你的帖子有点困惑。我打算的方法#2与您的建议基本相同(请参阅您帖子的最后一段)。因此,方法#2 不会产生传统的单页面应用程序——因为存在有意的页面重新加载。你能澄清一下Following this approach we'll finish with what is called Single Page Application.的意思吗
    • 据我了解,您的 Approach #2 建议加载页面一次,并通过 Backbone.Router 和 AJAX 调用进行每次后续页面更改,而无需任何真正的页面重新加载,我认为这与 SPA 模式相匹配。在我的第一段和第二段中,我说这是一个非常优雅的解决方案,但在第三段中我谈到了可能的问题,在第四段中我谈到了混合解决方案。
    猜你喜欢
    • 2017-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-22
    • 2016-02-11
    • 2018-03-29
    相关资源
    最近更新 更多