是否使用骨干路由器/历史

时间:2012-11-26 20:41:08

标签: javascript backbone.js browser-history backbone-routing

我正在创建一个骨干驱动的小部件集合(缺少一个更好的词)。消费者会将小部件放入他们的Web应用程序并初始化它们。我需要跟踪某些小部件的历史记录,但不一定需要/想要将内容实际注入浏览器的历史记录更新URL。 .navigate的{​​{1}}和replace选项似乎很有用。我不想干扰应用程序目前使用浏览器的URL /历史记录做什么,除非他们选择这样做(如果有的话)。

  1. 不想更新网址(除非选择加入)
  2. 不希望将事件插入浏览器历史记录(除非选择加入)
  3. 想要能够跟踪历史记录(一个简单的数组可能就足够了,但能够随意选择项目1和2是一个很大的好处)
  4. 骨干网的路由器/历史记录功能是否适合我的用例,或者我应该推出自己的解决方案?

1 个答案:

答案 0 :(得分:2)

Backbone路由器可能不是您想要的,除非您可以保证所有的消费者(实际上这意味着所有消费者的消费者)将拥有非常现代化的浏览器。原因是,如果用户没有拥有现代浏览器,Backbone将使用URL进行导航,而您的需求#1将被违反。

通过“现代浏览器”,我的意思是在这里显示为绿色的那个:

http://caniuse.com/#feat=history

如果我在你的鞋子里,我会使用普通的旧饼干存储导航细节;只要涉及的数据不多,我认为这样可行。