首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Backbone.js:单页应用程序、路由和hrefs问题

Backbone.js:单页应用程序、路由和hrefs问题
EN

Stack Overflow用户
提问于 2012-10-02 03:48:58
回答 2查看 538关注 0票数 1

这听起来可能有点复杂。

这是支持pushState的SinglePage应用程序。我有一条用于配置的路由:

代码语言:javascript
复制
    routes: {
        '': 'dashboard',
        'configure/sites/:id': 'configure',
        'configure/sites/:id/:section': 'configureSection'
    },

我使用tbranyen/backbone-boilerplate way来导航urls。如果我单击仪表板a href="configure/sites/33中的href,则视图渲染正常。在浏览器URL中,我可以看到``localhost:12345/configure/site/33‘。

在configure视图上,我有一个菜单,里面有一些<a href=

代码语言:javascript
复制
<ul class="nav configure-nav">
<li>
    <a href="overview" class="overview">Overview</a>
</li>
<li>
    <a href="configuration" class="configuration">Configuration</a>
</li>

问题是,如果我尝试点击这些链接,id就会消失。

预期href:http://localhost:12345/configure/sites/33/configuration

实际href:http://localhost:12345/configure/sites/configuration

你能解释一下发生了什么以及如何修复它吗?

EN

回答 2

Stack Overflow用户

发布于 2012-10-02 12:56:09

我不知道这是否能解决你的问题,但是如果你在做一个单页面的应用,你应该在"localhost:12345/“后面加上一个hashbang,否则所有的请求都会被发送到服务器。

票数 0
EN

Stack Overflow用户

发布于 2013-02-03 22:44:24

这是由于相对链接和绝对链接的工作方式。在本例中,href是相对于路径中最接近的“目录”的(为了保持文件系统的相似性,可以将:id部分看作一个文件)。

如果您在路由中添加一个尾随斜杠,则概述和配置链接将被正确地根植。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12680024

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档