Fergie
Fergie

Reputation: 6245

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

Angular.js routes create URLs such as these:

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

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

In my docs url, I would like to have one long page with <a name="sdsds"> sections and a traditional table of content with anchor links so that the user can hop up and down the page

Conceptually the table of contents would produce lots of invalid URLs such as http://cooldomain.com:3000/#/docs#coolAPIFunction which of course wouldn't work because of the double hash

So- is it possible to use anchor links in Angular.js applications that have routes?

Upvotes: 6

Views: 547

Answers (1)

Shu
Shu

Reputation: 266

You could enable html5 pushstate and get rid of the # in your routes. You can do so by adding this to your .config

$locationProvider.html5Mode(true);

However, be aware that now there will not be a distinction between Angular routes vs. server requests. You'll have to config your server to deliver the appropriate static html file (e.g. index.html) for that url.

Upvotes: 1

Related Questions