Angular2 路由问题修复详解
发布时间 - 2026-01-10 23:20:38 点击率:次Angular2 提供了比angular1 更为强大的路由功能,但是在具体使用路由过程中,可是出现了很多路由不按照预想的方式执行的问题。为了说明今天的问题,我特地新建了一个测试工程。欢迎交流。

首先介绍一下测试代码的组织结构,
其中包含两个组件:button、accordion。这个例子采用的是ng2-bootstrap.
我展示一下路由配置:
/**
* Created by guozhiqi on 2017/2/24.
*/
import {Route,Routes}from '@angular/router';
import {AppComponent}from './app.component';
import {LayoutComponent}from './layout/layout.component';
export const routes:Routes=[
{
path:'',
redirectTo:'button',
pathMatch:'full'
},
{
path:'',
component:LayoutComponent,
children:[
{
path:'button',
loadChildren:'./Button/Button-guo.module#ButtonGuoModule'
},
{
path:'accordion',
loadChildren:'./accordionguo/accordion-guo.module#AccordionGuoModule'
}
]
},
{
path:'**',
redirectTo:'button',
}
];
这段路由中我定义了默认路由,会跳转到button,但是我采用最新的angular-cli,并没有进行跳转,并且默认路由并没有使用layoutcomponent组件,这是最大的问题,因为layoutcomponent组件是整个页面的样式文件。
目前的结果什么呢?
我展示一下appmodule.ts代码:
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import {ButtonGuoModule}from './button/button-guo.module';
import { AppComponent } from './app.component';
import {ButtonsModule}from 'ng2-bootstrap/buttons';
import {routes}from './app.routing';
import {RouterModule}from '@angular/router';
import {CommonModule}from '@angular/common';
import {AccordionGuoModule}from './accordionGuo/accordion-guo.module';
import {LayoutComponent}from './layout/layout.component';
@NgModule({
declarations: [
AppComponent,LayoutComponent
],
imports: [RouterModule.forRoot(routes),AccordionGuoModule,
BrowserModule,RouterModule,CommonModule,
FormsModule,ButtonGuoModule,
HttpModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
请注意appmodule.ts中我标红的引入module,如果我将accordionmodule放在buttonmodule前面,那么显示的就是accordionmodule的内容,反之显示的就是buttonmodule的内容。
执行结果:
1.accordionmodule在buttonmodule前面
2.buttonmodule在accordionmodule前面
请注意,更改了顺序以后,务必重新编译,重新执行 ng serve命令。
会什么会出现这个问题?欢迎大家交流。下篇我会专门解释这个问题的答案
# angular
# 路由详解
# angularjs路由详解
# angularjs
# 路由问题修复
# Angular2 之 路由与导航详细介绍
# 详解angular2实现ng2-router 路由和嵌套路由
# Angular2学习笔记——详解路由器模型(Router)
# Angular2之二级路由详解
# 这个问题
# 请注意
# 的是
# 这是
# 放在
# 我会
# 这段
# 欢迎大家
# 我将
# 什么呢
# 跳转
# 介绍一下
# 改了
# 组织结构
# 跳转到
# 过程中
# 出现了
# 其中包含
# 但是我
# 路由功能
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】
今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】
如何快速配置高效服务器建站软件?
Laravel怎么使用artisan命令缓存配置和视图
Laravel如何处理CORS跨域问题_Laravel项目CORS配置与解决方案
装修招标网站设计制作流程,装修招标流程?
如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?
Laravel如何使用Eloquent进行子查询
如何登录建站主机?访问步骤全解析
Laravel如何连接多个数据库_Laravel多数据库连接配置与切换教程
javascript中闭包概念与用法深入理解
*服务器网站为何频现安全漏洞?
中山网站制作网页,中山新生登记系统登记流程?
Laravel中间件如何使用_Laravel自定义中间件实现权限控制
Win11怎么设置虚拟桌面 Win11新建多桌面切换操作【技巧】
Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】
Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧
手机网站制作与建设方案,手机网站如何建设?
java ZXing生成二维码及条码实例分享
微信小程序 配置文件详细介绍
Linux系统命令中screen命令详解
Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明
Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议
公司网站制作价格怎么算,公司办个官网需要多少钱?
Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】
微信h5制作网站有哪些,免费微信H5页面制作工具?
Linux系统命令中tree命令详解
百度输入法ai面板怎么关 百度输入法ai面板隐藏技巧
百度浏览器ai对话怎么关 百度浏览器ai聊天窗口隐藏
Java解压缩zip - 解压缩多个文件或文件夹实例
百度输入法全感官ai怎么关 百度输入法全感官皮肤关闭
如何在企业微信快速生成手机电脑官网?
如何在阿里云服务器自主搭建网站?
阿里云高弹*务器配置方案|支持分布式架构与多节点部署
Swift中switch语句区间和元组模式匹配
如何用PHP工具快速搭建高效网站?
Laravel如何优化应用性能?(缓存和优化命令)
Laravel怎么实现模型属性的自动加密
Laravel如何生成和使用数据填充?(Seeder和Factory示例)
原生JS实现图片轮播切换效果
Laravel如何实现数据库事务?(DB Facade示例)
如何在阿里云高效完成企业建站全流程?
Laravel如何与Pusher实现实时通信?(WebSocket示例)
高端建站如何打造兼具美学与转化的品牌官网?
文字头像制作网站推荐软件,醒图能自动配文字吗?
Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】
Claude怎样写约束型提示词_Claude约束提示词写法【教程】
Laravel如何发送邮件和通知_Laravel邮件与通知系统发送步骤
如何快速查询域名建站关键信息?
Laravel安装步骤详细教程_Laravel环境搭建指南

