AngularJS即时网址加载
问题描述:
这个问题可能会发出声音小狗与他们的衬衫ng-expert
标签。AngularJS即时网址加载
我已经看到一些基于AngularJS的网站,只要我点击一个链接,URL改变但浏览器不加载,它只会将动态内容加载到它们的ng-view
。
如果当前的URL是http://www.sample.com/
我点击联系我们链接,在我的浏览器的URL变得http://www.sample.com/contact-us
等等之类的Ajax负载,但浏览器的页面内容变化不会加载。
这件事对我来说有点新鲜,有人能够启发我吗?我见过几个教程,但链接仅基于标签(http://www.sample.com/#contactus
),而不是基于路由。 我不知道它是什么特定的Angular概念,所以我不知道要寻找什么。
我将非常感激建设性的坚实答案。谢谢!
答
你可以做没有哈希标签角JS路由,通过设置
// use the HTML5 History API
$locationProvider.html5Mode(true);
让你的浏览器网址将成为http://www.sample.com/contact-us
不http://www.sample.com/#contact-us
这里是完整的教程博客, https://scotch.io/quick-tips/pretty-urls-in-angularjs-removing-the-hashtag
您可以先查看['$ location' service](https://docs.angularjs.org/guide/$location),特别是关于“HTML5模式”的部分, 。请注意,服务器端需要重写URL以支持此操作。 –
感谢@NikosParaskevopoulos的链接参考。我有Laravel作为后端:) –