Michael Winther
Michael Winther

Reputation: 381

Angular removes directory in url when routing

I set up a local IIS and a application with a directory called test:

enter image description here

Then in my browser I browse to: "http://localhost/test"

I have a route for this:

const routes: Routes = [
 { 
  path: '', pathMatch: 'full', component: LoginComponent 
 },
 { 
  path: '**', redirectTo: '' 
 }
];

 @NgModule({
    imports: [
       RouterModule.forRoot(routes, { preloadingStrategy: PreloadAllModules })
    ],
    exports: [RouterModule]
 })

 export class AppRoutingModule {}

But when I arrive at the login page, the browser removes the "test" and just does the "http://localhost/" in the browsers address, which is wrong.

The browser also don't get the assets now as "test" is missing: enter image description here Just for information, when I build the app, I build it with --baseHref=/test/

Upvotes: 5

Views: 815

Answers (2)

Sai_Charan_Seri
Sai_Charan_Seri

Reputation: 57

Try directing through router class. After setting in component; .navigate to me it happend with wrong name.

Upvotes: 0

bryan60
bryan60

Reputation: 29335

you set it to redirect to blank if there is no matching route, and there is not one for test...

guessing you want to set the base href in your build command...

ng build --prod --baseHref=test

docs: https://angular.io/cli/build

you can set the same in ng serve if you're trying to run this as a dev server. but that seems redundant.

Upvotes: 1

Related Questions