2017-10-12 1 views
0

Ich baue eine Angular 2 App.

Wenn das Projekt von Visual Studio 2017 gestartet wird, verwendet wird, kann ich erfolgreich Weg zum App innerhalb eines Bereichs (Home2017/Start/Index.cshtml):Angular 2 + MVC Routing: Routing schlägt nach Fallback fehl

Route toHome2017 = null; 
    toHome2017 = routes.MapRoute(
       name: "Default_to_Home2017", 
       url: "{controller}/{action}/{id}", 
       defaults: new { controller = "Start", action = "Index", id = UrlParameter.Optional }, 
       namespaces: new string[] { "BIP2.Areas.Home2017.Controllers" } 
      ); 

      toHome2017.DataTokens["area"] = "Home2017"; 

Angular-Routing ist:

Wenn ich zu/Architecture navigiere, funktioniert das Angular Routing.
Allerdings, wenn ich die Seite aktualisieren, und leiten sie zu Home2017/Start/Index mit:

toHome2017 = routes.MapRoute(
      name: "Default_to_Architecture", 
      url: "Architecture", 
      defaults: new { controller = "Start", action = "Index", id = UrlParameter.Optional }, 
      namespaces: new string[] { "BIP2.Areas.Home2017.Controllers" } 
     ); 
      toHome2017.DataTokens["area"] = "Home2017"; 

Die App geladen wird, aber der Winkelweg: ‚mit dem StartpageComponent‘ mit der URL angezeigt wird /Die Architektur/.

Was fehlt mir?



EDIT: Die gleiche Technik für mich arbeitete in AngularJS

Antwort

0

Okay, ich habe es herausgefunden:

Ausführen der App auf localhost, die Basis ref Einstellung:

document.write('<base href="' + document.location.href + '" />'); 

verursacht die Basis zu sein/Architektur, als ich die Seite aktualisiert.
changeing es einfach:

<base href="/" /> 

es gelöst.