在主干应用程序中获取以前的路由器/url
Posted
技术标签:
【中文标题】在主干应用程序中获取以前的路由器/url【英文标题】:Get previous router/url in backbone application 【发布时间】:2013-09-15 02:51:14 【问题描述】:我有一个主干应用程序,我需要知道访问当前路由的路由器。有可能吗?
例如:-
我从#/test1
到达#/current
,在另一个例子中,我从#/test1
到达。
那么我可以通过某种方式来检测之前的路由器命中吗?
我用过:
Backbone.history.fragment
这只会给我当前访问的路线,而不是从哪条路线。
【问题讨论】:
【参考方案1】:您可以将历史记录存储在某个数组中,并对最后/上一个项目进行一些操作。
var history = [];
this.listenTo(this, 'route', function (name, args)
history.push(
name : name,
args : args,
fragment : Backbone.history.fragment
);
console.log(history);
);
【讨论】:
好的,我有一段时间回来了,但我正在考虑任何内置的方式来检测主干历史。我想我必须手动这样做 我会让这个问题再开放 2-3 天,只是为了知道是否还有其他方法可以让其他人解决这个问题。谢谢@Vitaliy Petrychuk @VitaliyPetrychuk 我有点喜欢这种方法,但我应该在哪里运行这个 sn-p?在视图中?在路由器中?你有什么建议? @darksoulsong,我建议对这个 sn-p 使用 Controller。 Backbone 没有它,但您可以创建它,或者如果您使用 Marionette - 它已经为您创建。如果你不想创建一个新的 Backbone.Controller 你可以在路由器中运行这个 sn-p以上是关于在主干应用程序中获取以前的路由器/url的主要内容,如果未能解决你的问题,请参考以下文章