11

someone knows what "#!" Means. on the url?

I was working until then this appears,I had a "#" always in the url and would like to keep it that way. Currently routing is not working anymore,probably because of this url change.

It's part of a business project, i don`t want to change to html5Mode.

I tried to use:

$locationProvider.hashPrefix("");

Even correcting the url in this way routing is having problems

2
  • How do you do your routing ? if you're using angular-route, then when you loads your web, what's your URL looks like ? When this #! appears ? angular route doesn't work if it have no valid url like #/report Commented Dec 13, 2016 at 0:57
  • For reference, here's a simple routing in angular plnkr.co/edit/dd8Nk9PDFotCQu4yrnDg?p=preview Commented Dec 13, 2016 at 1:06

3 Answers 3

9

Thats called hash-bang.

To fix this use :

    angular.module('yourApp', [])
    .config(['$locationProvider', function($locationProvider) {
        $locationProvider.hashPrefix('');
    }]);

Adding html5Mode would even get rid of the '#' in the url but if you refresh the page, then you would get a 404 error. This can be fixed by configuring your server a bit. For that you might want to check the nice little tutorials :

  1. https://scotch.io/tutorials/pretty-urls-in-angularjs-removing-the-hashtag
  2. https://www.theodo.fr/blog/2017/01/pretty-url-in-angularjs-and-loopback-drop-the/

There is another answer to the hashbang issue in stackoverlow :

Doing links like Twitter, Hash-Bang #! URL's

Sign up to request clarification or add additional context in comments.

Comments

1

You can use html5Mode in your location provider.

$locationProvider.html5Mode(true);

more info https://scotch.io/tutorials/pretty-urls-in-angularjs-removing-the-hashtag

Comments

0

Set html5mode true in your app.config

$locationProvider.html5Mode(true).hashPrefix('*');

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.