Open whitejy opened 5 years ago
路由: 1、路由的path匹配,按照先后顺序来匹配,确定的path放在最前面,通用匹配符放在最后面。 2、路由重定向必须增加pathMatch,包含两个值:full和prefix,full是全词匹配,prefix是前缀匹配。 3、路由模块需要将RouterModule在exports中导出。 4、在根模块下调用 RouterModule.forRoot,在其他模块下就只能调用RouterModule.forChild; 5、导入模块的顺序很重要 imports: [ BrowserModule, FormsModule, HeroesModule, AppRoutingModule ], 路由配置的顺序很重要。 路由器会接受第一个匹配上导航所要求的路径的那个路由。
当所有路由都在同一个 AppRoutingModule 时,你要把默认路由和通配符路由放在最后(这里是在 /heroes 路由后面), 这样路由器才有机会匹配到 /heroes 路由,否则它就会先遇到并匹配上该通配符路由,并导航到“页面未找到”路由。
constructor和oninit区别: constructor是ES6引入类的概念后新出现的东东,是类的自身属性,并不属于Angular的范畴,所以Angular没有办法控制constructor,会在类生成实例时调用; ngOnInit用于在Angular第一次显示数据绑定和设置指令/组件的输入属性之后,初始化指令/组件。
路由: 1、路由的path匹配,按照先后顺序来匹配,确定的path放在最前面,通用匹配符放在最后面。 2、路由重定向必须增加pathMatch,包含两个值:full和prefix,full是全词匹配,prefix是前缀匹配。 3、路由模块需要将RouterModule在exports中导出。 4、在根模块下调用 RouterModule.forRoot,在其他模块下就只能调用RouterModule.forChild; 5、导入模块的顺序很重要 imports: [ BrowserModule, FormsModule, HeroesModule, AppRoutingModule ], 路由配置的顺序很重要。 路由器会接受第一个匹配上导航所要求的路径的那个路由。
当所有路由都在同一个 AppRoutingModule 时,你要把默认路由和通配符路由放在最后(这里是在 /heroes 路由后面), 这样路由器才有机会匹配到 /heroes 路由,否则它就会先遇到并匹配上该通配符路由,并导航到“页面未找到”路由。