AngularJS:用哈希连接得到了urlencoded

问题描述:

我有一个像http://localhost:8000/#?4047=27.20#4047AngularJS:用哈希连接得到了urlencoded

的链接。如果我把它粘贴并重新加载页面,一切工作正常。

如果我做出这样

<a href="{{ location.$$absUrl }}" target="_blank">same</a> 

链接它工作正常。

如果我把链接粘贴到我的电子邮件或备注软件中,链接看起来很好。但是,当我点击它,它就会url编码和失败

http://localhost:8000/#?4047=27.20%234047 

所以,$location.hash()是空的。

我主要使用chrome。 Safari类似但略差。我粘贴http://localhost/#/?9189=668.00&7010=128.00#7010,9189,它变成http://localhost/#/?9189=668.00&7010=128.00%237010,9189,我的应用程序中断。

Firefox似乎不编码#并处理它只是我想要的。人力资源管理。

我宁愿把它放在配置的某个地方,也许。但是,出于我的目的,如果需要,我可以在控制器中尽早“纠正”网址。

// aint nobody got time fo dat 
$location.url($location.url().replace('%23', '#'));