我正在使用AngularJS开发一个中文网站。我使用ui-router来管理URL链接,URL的参数是中文。
以下是代码,schoolName
是控制器中的变量,值为中文字符:
<a ui-sref="showSchools({name:schoolName})" > 查找</a>
问题是它会生成如下的URL:
http://localhost:8080/#/showSchools?name=%E7%A6%8F%E5%BB%BA%E7%9C%81%E9%97%BD%E4%BE
但我希望链接如下:
http://localhost:8080/#/showSchools?name=第一中学
我尝试使用encodeUri过滤器:https://github.com/rubenv/angular-encode-uri将param编码为utf8,但它不起作用。
有人知道如何在网址中显示中文字符吗?
答案 0 :(得分:0)
这可能为时已晚,但我认为这可能会有所帮助。
在尝试使用localhost测试角度应用程序(使用ui-router)时,在尝试显示网址中的中文字符时也遇到了同样的问题。
以前的网址显示如下:
http://localhost:56066/#/map/%E6%B1%9F%E8%8B%8F
但是,只要我添加以下行来清理网址:
$locationProvider.hashPrefix('!').html5Mode(true);
网址现在显示如下(我希望它们看起来像这样):
http://localhost:56066/map/黑龙江
我还没弄清楚为什么清理网址有帮助!