gpt4 book ai didi

backbone.js - Marionette PushState URL 处理 - 怎么做?

转载 作者:行者123 更新时间:2023-12-04 05:07:51 25 4
gpt4 key购买 nike

我一直无法找到任何关于 Backbone.Marionette 使用 pushstate withOUT Node.js 或 grunt 的文章,或者需要对 URL 处理进行认真讨论的地方。例如,用户应该能够将指向内部页面的链接发送给她的祖母并使该链接有效。 pushstate 功能似乎特别不适合现实世界。有人可以发表评论并提供一些指向有关该主题的严肃文章的链接吗?

最佳答案

一般来说,你只需要做两件事......

  • 通过调用 Backbone.history.start({ pushState: true }); 告诉 Backbone 使用 pushstate .您可能还需要添加类似 root: 'myApp' 的内容。如果您的 Marionette 应用程序是从 http://example.com/myApp 提供的,则添加到该参数而不是直接在 http://example.com .
  • 配置您的 Web 服务器,以便无论用户请求什么 URL,都会返回相同的内容(您的 Marionette 应用程序)(无需重定向)。

  • 问题是 #2 的实现方式不同,具体取决于您使用的 Web 服务器类型。而且你还没有告诉我们你在什么堆栈上。例如,在 ASP.NET 中,这可以通过向 RouteConfig.cs 文件添加类似内容来设置“捕获所有”路由来处理:
            // all requests (except those explicitly handled by another route)
    // go to HomeController.Index and then the Backbone router examines
    // the URL client-side to determine client-side what to do
    routes.MapRoute(
    name: "Default",
    url: "{*clientRoute}", // this is wildcard which captures the entire URL
    defaults: new { controller = "Home", action = "Index" }
    );

    其他 Web 服务器堆栈将有不同的方式来实现相同类型的事情。

    关于backbone.js - Marionette PushState URL 处理 - 怎么做?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15284066/

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