AngularJS:用哈希连接得到了urlencoded
问题描述:
我有一个像http://localhost:8000/#?4047=27.20#4047
AngularJS:用哈希连接得到了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', '#'));