我试图在角2中运行测试应用程序,但在路由器的最新版本(3.0.0 alpha-7)中,我遇到了一些问题。
main.ts:
import {bootstrap} from '@angular/platform-browser-dynamic';
import {AppComponent} from './app.component';
import {APP_ROUTER_PROVIDERS} from './app.routes';
bootstrap(AppComponent, [APP_ROUTER_PROVIDERS]);app.component.ts:
import {Component} from '@angular/core';
import {ROUTER_DIRECTIVES} from '@angular/router';
@Component({
selector: 'my-app',
template: `
<router-outlet></router-outlet>
`,
directives: [ROUTER_DIRECTIVES]
})
export class AppComponent { }app.routes.ts:
import {provideRouter, RouterConfig} from '@angular/router';
import {SigninRoutes} from './signin/signin.routes';
export const AppRoutes: RouterConfig = [
...SigninRoutes
]
export const APP_ROUTER_PROVIDERS = [
provideRouter(AppRoutes)
];signin.component.ts:
import {Component} from '@angular/core';
import {ROUTER_DIRECTIVES} from '@angular/router';
@Component({
selector: 'signin',
template: `
<a [routerLink]="['/signin']">Sign In</a>
<a [routerLink]="['/profile']">Profile</a>
<br><br>Sign In Test
<router-outlet></router-outlet>
`,
directives: [ROUTER_DIRECTIVES]
})
export class SigninComponent {
}signin.routes.ts:
import {Component} from '@angular/core';
import {ROUTER_DIRECTIVES} from '@angular/router';
@Component({
selector: 'signin',
template: `
<a [routerLink]="['/signin']">Sign In</a>
<a [routerLink]="['/profile']">Profile</a>
<br><br>Sign In Test
<router-outlet></router-outlet>
`,
directives: [ROUTER_DIRECTIVES]
})
export class SigninComponent {
}profile.component.ts:
import {Component} from '@angular/core';
@Component ({
selector: 'profile',
template: `
Profile Test
`
})
export class ProfileComponent {
}出于某种原因,我可以启动这个应用程序,但是尝试单击Profile routerLink会导致错误:
例外:错误:未知(承诺):TypeError:无法读取未定义的属性‘注释’
如果有人能帮我解决这个问题,我会很感激的。
发布于 2016-06-28 06:00:54
听起来像是:
类似问题:
检查常见错误:
/中没有pathcomponent,redirectTo,children发布于 2016-09-25 02:14:30
我在使用webpack时出错,并试图异步加载如下所示的路由:
{
path: 'password', loadChildren: () => new Promise(resolve => {
(require as any).ensure([], require => {
resolve(require('./password/password.module').PasswordModule);
});
})
},上面的代码没有什么问题,但是看看我以为正在加载的模块:
@NgModule({
imports: [
CommonModule,
...
],
declarations: [
...
],
providers: [
...
]
})
export class LockedModule {} // wrong name !!!!注意模块的名称,LockedModule,它应该是PasswordModule。我无意中发现了这个,我花了一段时间才找到。通常情况下,我滚动到底部并验证导出名称,而调试窗口没有给出原因的指示。
https://stackoverflow.com/questions/38065325
复制相似问题