У меня есть main.component.ts
код:
Его расположение: root/
Угловое 2 Маршрутизатор Прямой доступ к URL
import {Component, OnInit, OnChanges, IterableDiffers} from 'angular2/core';
import {TypeService} from './type/type.service';
import {RouteConfig, ROUTER_DIRECTIVES} from 'angular2/router';
import {Router} from 'angular2/router';
@Component({
selector: 'my-app',
providers: [],
directives: [ROUTER_DIRECTIVES],
template: `
<a [routerLink]="['Type']">Type</a>
<router-outlet></router-outlet>
`
})
@RouteConfig([
{path:'/type', name: 'Type', component: TypeService}
])
export class AppComponent{
constructor(private _router: Router){}
}
Тогда у меня type.component.ts
код:
Его расположение: root/type
import {Component, OnInit} from 'angular2/core';
import {DirectoryComponent} from '../main/main.component';
import {RouteConfig, ROUTER_DIRECTIVES} from 'angular2/router';
import {Router} from 'angular2/router';
import {AppComponent} from '../app.component';
import {Http} from 'angular2/http';
@Component({
selector: 'type',
directives: [ROUTER_DIRECTIVES],
template: `<h1>hi</h1>`
})
export class TypeService{
constructor(
private _router: Router) {}
}
Когда я нажимаю ссылку «Тип» в своем основном приложении, мне требуется root/type, и он загружает компонент типа. Однако, если я нажму reload, это даст мне ошибку Not Found.
Как это сделать, чтобы я мог напрямую обращаться к компонентам через URL-адрес?
Есть ли что-то вроде иначе как в угловом 1.x? – Gary
@Gary Я использую '{path: '/: unknown', redirectTo: ['/ Root']}', не уверен, есть ли лучший способ ... – Sasxa
http://stackoverflow.com/questions/34381438/equal-of-angle-1-other-route-in-angular-2 https://github.com/angular/angular/issues/4055 Позвольте мне ответить на это формально. Наткнулся на эту проблему сам. – Gary