是否可以在 Angular.js 应用程序中使用传统的锚链接

Is it possible to have traditional anchor links in Angular.js applications

本文关键字:传统 链接 应用程序 Angular js 是否      更新时间:2023-09-26

Angular.js 路由创建如下 URL:

http://cooldomain.com:3000/#/search

http://cooldomain.com:3000/#/docs

在我的文档 url 中,我希望有一个包含<a name="sdsds">部分的长页面和一个带有锚链接的传统目录,以便用户可以上下跳转页面

从概念上讲,目录会产生许多无效的URL,例如 http://cooldomain.com:3000/#/docs#coolAPIFunction,由于双哈希,这当然不起作用

那么,是否可以在具有路由的 Angular.js 应用程序中使用锚链接?

您可以启用 html5 pushstate 并删除路由中的 #。您可以通过将其添加到您的 .config 来做到这一点

$locationProvider.html5Mode(true);

但是,请注意,现在 Angular 路由与服务器请求之间没有区别。您必须配置服务器以提供该URL的适当静态html文件(例如index.html)。