环球科创网

2022年02月27日整理发布:谈谈ngRoute路径出现#!#问题怎么解决

更新时间:2022-02-28 02:48:15

导读 给我们讲讲ngRoute path 的样子吧! 如何解决问题,相信朋友们应该都很关心这个话题,现在就为朋友们说说ngRoute path的出现吧

给我们讲讲ngRoute path #的样子吧!#如何解决问题,相信朋友们应该都很关心这个话题,现在就为朋友们说说ngRoute path的出现吧#!#如何解决问题,边肖还收集了关于ngRoute path出现的信息#!#关于如何解决问题的信息,希望你看到会喜欢。

本文向您介绍了ngRoute path #的外观!#解决方案。有一定的参考价值,有需要的朋友可以参考一下,希望能帮到大家。

相关推荐:《angularjs教程》

做开源项目的时候用了' angular-route' :' 1.6.4 ',发现设置A标签的href后,点击后的路径不是#/,而是#!#。但是,我没有设置hashPrefix。

a href=' # about ' class=' ng-binding ' about/a单击标记,它将出现在地址栏中:http://localhost:9000/#!#大约100 .

打印$location。

发现我们设置的$location并没有像预期的那样显示在伪url的path部分,而是显示在hash部分。

原因是:在route 1 . 6 . 0版本中,默认的hashPrefix被改成了"!'。

相当于下面的代码

$locationProvider.hashPrefix('!');下面提供了两种解决方案:

1.将hashPrefix恢复到1.6之前的版本。

$ location provider . hashprefix(“”);2.更改href的格式

a href='#!about ' class=' ng-binding ' about/A还有一点需要注意的是,一旦引入了n route,A标记似乎就会被n route覆盖。一旦href以#开头,它会在url的hash部分加一个/而不是直接把字符串附加到#上,所以不可能像一个href='#about '我研究过的那样跳到ID='。我可以写一个指令,然后调用window.location.hash来解决这个问题。

超文本标记语言

a goto=' # about ' href=' # about ' class=' ng-binding ' about/ajs

定义(['app'],函数(app) {

app.directive('goto ',function () {

返回函数($scope,$elem,$attrs) {

$elem.click(function () {

//console . log($ attrs . goto . substring(1));

window . location . hash=$ attrs . goto . substring(1);

});

};

});

});注意:上面的定义是requireJS定义一个模块。

关于编程的更多信息,请访问:编程教学!也就是说ngRoute路径出现#!#如何解决问题?更多详情请关注php中文网其他相关文章!

来源:php中文网

免责声明:本文由用户上传,如有侵权请联系删除!