javascript – Backbone.js路由:从hash到hashbang

前端之家收集整理的这篇文章主要介绍了javascript – Backbone.js路由:从hash到hashbang前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个传统的backbone.js应用程序,我目前正在进行改造,可以被搜索引擎正确抓取.我已经决定使用prerender.io的Node.js Phantom.js系统来为搜索引擎提供我的 javascript驱动网站的静态HTML呈现.但是,使用prerender.io的一个要求是将所有哈希URL转换为hashbang(因此site.com/#gallery应该是site.come /#!gallery).我的网站目前仅使用哈希进行网址路由.如何将其切换为hashbang?

解决方法

我想你必须将指向#gallery的锚链接的url属性更改为#!gallery并相应地修改你的路由器,例如
var app = app || {};
(function($){
  Workspace = Backbone.Router.extend({
    routes: {
      '!gallery': 'gallery',..
    },..
    gallery: function() {
      ..
      this.navigate('!/gallery',{trigger:true});
    }
);

猜你在找的JavaScript相关文章