2016-05-26 21 views
0

Ich habe eine angular 2 App (mit Angular RC1 gebaut), die die Klasse RouteConfig aus verwendet das Router-veraltete Modul von RC1.RouteConfig in Router-depracted in Angular 2 ist vorläufig ein paar zusätzliche '% E2% 80% 9C' doppelte Linke Anführungszeichen auf die Umleitung

import {Component} from "@angular/core"; 
import {RouteConfig, RouterOutlet} from "@angular/router-deprecated"; 
import {LoginComponent} from "./login/login"; 

@RouteConfig([ 
    {path: "/", redirectTo: ["Login"]}, 
    { 
    path: "/login", 
    component: LoginComponent, 
    name: "Login" 
}]) 
@Component({ 
    selector: "my-app", 
    template: "<router-outlet></router-outlet>", 
    directives: [RouterOutlet] 
}) 
export class AppComponent { 
} 

Wie oben zu sehen, wenn der Benutzer trifft localhost: 3000 auf dem Browser, ich sehe die URL Browser umleiten zu:

http://localhost:3000/%E2%80%9C/%E2%80%9C/%E2%80%9C/login 

ich mit Component Dekorateur templateUrls ein damit verbundenes Problem sehe. Here's my other stackoverflow post

Ich muss hier fehlen oder etwas falsch machen. Irgendwelche Ideen?

Ich vermute, es könnte mit der Config SystemJS zu tun haben?

+0

Sie könnten die '' in '' oder verwenden Sie 'PathLocationStrategy' (Standard) mit einem Server, der es nicht unterstützt. –

+0

@ günter-zöchbauer - Ich habe das '' tag. –

+0

Haben Sie das jemals gelöst? Für mich (RC1, veralteter Router), ein "ist auf allen Routen eingefügt .. es ist nervig .. habe keine Ahnung, wie es zu beheben – Spock

Antwort

0

Die Auflösung war, dass der

<base href="/"> 

Tag eine stilisierte Zeichencodierung für die doppelten Anführungszeichen verwendet hat. Ich gebe (schändlich) zu, dass ich das Tag aus einem Tutorial kopiert und das doppelte Anführungszeichen nicht bereinigt haben muss; Lektion gelernt.

0

Nach this post, ich denke, die Lösung besteht darin, 'RouteConfig' in 'Routen' zu ändern und entfernen Sie die Eigenschaft 'Name' aus beliebigen Routen Definitionen in diesem Array.