问题标签 [backbone-routing]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
backbone.js - 如何在单页应用程序中正确切换复杂的主干应用程序
我有几个复杂的视图/应用程序,它们共同构成了一个大应用程序。
想想 gmail,你有邮件和联系人或 twitter,从个人资料视图切换到设置 在我的例子中,这是一个游戏,你可以在其中玩一个视图和一个地图编辑器。
我想在它们之间切换而无需在大主应用程序中重新加载。
现在我正在努力解决如何实现两件事的概念:
- 如何正确切换(解除绑定事件,拆除所有视图)而不泄漏
- 当所有子应用都可以有自己的导航项时,如何组织路由。
具体问题:
有一个gameApp和一个editorApp
如果我在“#game/12345/details/”并切换到“#editor/map/123”,应该会发生以下情况:
1) 主路由通知app切换 2) 拆掉游戏app和所有子视图/事件 3) 切换并初始化editorApp 4) editorApp路由到map 123,加载数据
考虑到额外的路由参数,主路由器会是什么样子我应该使用子路由器吗?我是否应该将游戏应用程序留在内存中并隐藏它?一个函数如何处理路由?
我知道这是很多东西,但也许你可以在教程/设计模式/.. 网站上指导我?
这个用主干.js 清洗视图?似乎是切换应用程序的一种选择,但对子路由没有帮助
backbone.js - 视图中选项卡的主干子路由
我有两个选项卡的视图。单击选项卡时,我想:
- 显示选项卡
- 将哈希更改为
#view/tabName
#view/tab1
如果和之间的哈希值发生变化#view/tab2
,则不会触发路由,但视图会显示tab2。如果哈希值从#anotherView
变为#view/tabName
,则路由将触发,并使用初始选项卡tabName呈现视图。
总而言之,当哈希在具有相同前缀的哈希之间发生变化时#view
,视图将处理该事件,否则由路由器处理。
这是我当前的代码。
javascript - BackboneJS 路由
我的应用程序的索引页面位于http://cms/admin
(我在本地主机上)。在索引页面上只有一个a
元素:
当我单击链接时,它转到/cms/admin/test
我想使用 BackboneJS 的路由机制将我的应用程序转换为对 ajax 友好的应用程序,但直到现在我才能做到。这是我的 JS 代码:
当我运行该页面并单击该链接时,它不会将任何内容记录到控制台并且浏览器会跟随该链接。页面加载后,它会记录“它在这里”消息。
我已经在没有根参数的情况下尝试过,“/admin/test”而不是“test”。我尝试了各种组合:“test”、“/test”、“test/”、“/admin/test”、“admin/test”等。
谢谢。
javascript - 不调用主干路由
我有一个使用 Backbone 0.5.3 的工作应用程序,它不再使用主干 0.9.2 工作。
我发现 Router.navigate() 出于某种原因没有调用我的路由。
这是我的路由器:
像这样手动调用路由可以正常工作:
我还尝试覆盖主干的 .navigate 方法来调试我的应用程序...
...似乎调用了 .navigate 但是...
...只是不调用路线。
我正在使用 PushState,这是我最初的电话:
已经在没有 root 和 silent 参数的情况下尝试过 - 没有成功。
同样:这适用于 Backbone 0.5.3。
感谢大家留下回复!
阿奇姆
backbone.js - Backbone.js 和导航
由于骨干没有做大多数事情的方式,我对很多事情感到困惑。其中一件事是浏览我的应用程序的正确方法。
我意识到 BB 路由器有一个 '.navigate' 方法,可用于推送 url 和触发路由。现在,由于我的应用程序有超过 1 个路由器,我不确定在一个或其他路由器上调用“.navigate”之间有什么区别。
这是我的路由器
现在我可以做
我用于全球应用导航的路由器有什么不同吗?这对我来说似乎很奇怪。
backbone.js - Backbone.js - 大型站点的动态路由
我计划将主干 + 要求用于具有 30 多个模块的应用程序。我打算创建类似这样的东西,而不是为每个模块创建单独的路线。
不确定这是最佳实践。请指导。
javascript - Backbone.js - 映射标准 url 参数 - 使用多个参数
我对backbone.js 很陌生,并试图将普通的javascript/jquery 应用程序转换为主干MVC。有了它,我来到了 Backbone.Router,我目前正在尝试用主干解决我的旧 URL 处理,但是我想和你讨论一些问题:
我的传统 URL 模式如下所示:
这与骨干看起来如何以及如何对其进行编码?
问题是,我的传统处理方式允许我在不关心参数顺序的情况下评估我的 URL 字符串。有了骨干,这似乎是不可能的。对于我的应用程序,它需要在 url 中传递类别(参见cats=..)等,以链接到特定的应用程序位置/状态。
我已经用 pid (panorama-id) 试过了,所以模式是这样的:
“全景”目前没有参数,而是代表应用程序中的某个页面。
如果有人为我找到解决方案,我将非常感激。
backbone.js - Backbone JS:带有空参数的路由
我有一条路线。
这个:
完美运行,但如果 URL 是:
我的路由器不理解它并且不执行任何操作。有谁知道如何解决这一问题?
javascript - Backbone.Router 接受查询和路径
我希望我的 Backbone.Router 实例监听诸如“#/settings”和“#/settings/privacy”之类的 hashbang
目前我这样处理这个问题:
我现在只想在一条路线上完成这一切。不幸的是 'settings/:query' 只允许 'settings/'
有人知道如何处理这个吗?
问候
ruby-on-rails-3.2 - 具有自定义默认路由的骨干路由器
我想在视图上启动一个主干应用程序,该应用程序已经由 Rails 呈现。
这是我的路由器代码
然后在渲染视图中,我启动应用程序
但是,如果我打开页面
路由器不进入“索引”状态。
我错过了什么吗?