I already have done $locationProvider.html5Mode(true);
but it is not working. Whenever I access http://example.com
it goes to http://example.com/#!/
. Code is given here:
var myApp = angular.module('myApp', ['ui.router', 'ui.bootstrap']);
myApp.config(['$qProvider', function ($qProvider) {
$qProvider.errorOnUnhandledRejections(false);
}]);
myApp.config(function($stateProvider, $urlRouterProvider,$locationProvider) {
// For any unmatched url, redirect to EXTRANET home page
$urlRouterProvider.otherwise('/');
// Now set up the states
$stateProvider
.state('listrole', {
url: "/list-role",
views: {
'main-content': {
templateUrl: rootUrl+ 'views/main.html',
controller: 'rolesCtrl'
}
}
})
$locationProvider.hashPrefix('');
$locationProvider.html5Mode(true);
});
Update
I added $locationProvider.hashPrefix('');
as well but no difference. Also let me tell you that I am enter address in address bar and hitting enter. Am I doing right? how will browser find that it does not need to refresh from server?
Update #2
Ideally I want URL as http://example.com
and http://example.com/#!/list-role
to http://example.com/list-role
. Right now http://example.com/list-role
gives 404
Update #3
I am using nginx proxy, if that helps.
Update #4
Erased Cache. Now I can see http://example.com
instead of http://example.com/#!
but still http://example.com/list-role
gives 404
Here the task is to remove a particular element from the DOM with the help of AngularJS. Approach: Here first we select the element that we want to remove. Then we use remove() method to remove that particular element. Example 1: Here the element of class('p') has been removed.
To remove an element from an array in Angular or Typescript we can use javascript's delete operator or Array splice function.
copy() creates a new object as a deep copy.
If you want to remove this prefix, add this code to your config:
appModule.config(['$locationProvider', function($locationProvider) {
$locationProvider.hashPrefix('');
}]);
Source here for more information.
If you want to remove the whole prefix (#
and not only !
), you may try this solution:
1) Activate the HTML5 mode and remove the prefix !
in your module config
$locationProvider.html5Mode(true);
$locationProvider.hashPrefix('');
2) And then set base to /
in the <head>
on your index.html
<head>
...
<base href="/">
</head>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With