import {Component, OnInit, Input} from '@angular/core';
import { Router } from '@angular/router';
import { MainTableService } from './main.table-service';
import { Corps } from './corps';
@Component ({
selector: 'main-table',
templateUrl: 'app/main-table.component.html',
styleUrls: ['app/main-table.component.css']
})
export class MainTableComponent implements OnInit {
errorMessage: string;
corpsData: Corps[];
constructor(
private mainTableService: MainTableService,
private router: Router
) {}
ngOnInit() {
this.getCorpsData();
}
getCorpsData() {
this.mainTableService.getCorpsData()
.subscribe(
corpsData => this.corpsData = corpsData,
error => this.errorMessage = <any>error
);
}
onSelect(corp: Corps): void {
this.router.navigate(['/details', corp.ID]);
}
}
再会。我正在使用 Angular2 上的一个小应用程序,将其传输到服务器后,路由出现问题。以前,一切都植根于一台运行正常的计算机上,并且运行正常。现在应用程序位于 /static/dat 文件夹中的远程服务器上。正如预期的那样,所有路径都损坏了,但可以修复它,但它不适用于路由。所以我又一次把所有东西都恢复原状,这就是 -
<head>
<base href="/">
它在 index.html 中
这是路由器设置
import { AppComponent } from "./app.component";
import { MainTableComponent } from "./main-table.component";
import { MainTableService } from "./main.table-service";
import { SelectedDetailsComponent } from "./selected-details.component";
import { SearchService } from "./search-service";
import {SelectedDetailsService} from "./selected.details-service";
@NgModule({
imports: [
BrowserModule,
HttpModule,
JsonpModule,
RouterModule.forRoot([
{
path: 'details/:ID',
component: SelectedDetailsComponent
},
{
path: 'corporations',
component: MainTableComponent
},
{
path: '',
redirectTo: '/corporations',
pathMatch: 'full'
}
])
],
declarations: [
AppComponent,
MainTableComponent,
SelectedDetailsComponent
],
providers: [
MainTableService,
SearchService,
SelectedDetailsService
],
bootstrap: [ AppComponent ]
好吧,在输出中,我们得到一个没有加载模板的页面和一堆错误,例如 EXCEPTION: Uncaught (in promise): Error: Cannot match any routes。URL 段:'static/dat'
我已经尽我所能地尝试并添加和更改路径,但到目前为止输出是相同的。添加了示例组件