我使用此方法:

使用ember.js的hashbang URL

现在,我拥有带有Hashbangs的网站。但是人们也只有哈希来到旧的URL,但没有哈希。

那么,如果有人访问旧样式的URL,如何将URL从仅哈希更改为Hashbang?

有帮助吗?

解决方案

我认为您不需要对此进行调整。简单解决方案是在Ember应用程序加载之前您可以运行以下代码。

    var url = window.location.toString();

    if(url.split('#!').length==1) {
      if(url.split('#').length==2) {
        window.location = url.split('#')[0]+'#!' + url.split('#')[1];
      }
    }

基本上,它的作用是将URL重写为#!。

更新: 另一种方法是在Ember Initializers中写上述代码。

这是JSBIN http://emberjs.jsbin.com/alireto/1#post

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top