Angular2之二级路由详解


Posted in Javascript onAugust 31, 2018

写了一阵子的Angular 2 现在还是觉得更喜欢Angular 1的版本。

1的版本更多的是整合,按照模块来区分,并没有做更细的划分,而2的版本中,在创建时模块组件时就已经有了很好的区分,每个模块单独管理各自的组件,在组件中也是各自管理自己的样式,效果。

在以往1的版本中,要整合路由是十分容易的,无论是一级或者二级路由都可以写在一个文件中

但是在2中则是将路由写在上层模块中,一般app为主模块,定义一个app-routing.module.ts的主路由。

基本的Angular 2 入门在前面一篇里面也有所提及

这里就从创建项目开始:

第一步:创建一个基于angular-cli的项目

ng new project-name //项目的名称

创建完成后就是一个基本的项目框架,其中包括根模块、根组件等,在根模块中,原本所定义的路由是在其中的,但在一般的工程项目中,更多的习惯于将路由重构为模块。

详细可参考Angular 2 文档高级教程中的>路由与导航,

第二步:此时可以创建一个app-routing.module.ts 文件来放总路由,其中的redirectTo为打开项目时的路由定向。

Angular2之二级路由详解

第三步:创建一级模块,在项目中打开命令窗口,输入

ng g module my-new-module //模块名称

假设此处我输入的为ng g module user,则会直接生成以下这些文件

Angular2之二级路由详解

此时在app.module.ts 中也会生成

Angular2之二级路由详解

第四步:创建组件

ng g component my-new-component //组件名称

这里我创建了两个组件分别叫做usermanagement & adduser,同样生成以下文件

Angular2之二级路由详解

在user.module.ts中也会生成二级组件

Angular2之二级路由详解

第五步:书写模块中的路由配置

仍然是写在user.module.ts 中,在注入组件之后,写入二级路由forChild,此处必不可少的是path的空白链接!!不然会报user的错,相当于一个父层的定向

Angular2之二级路由详解

还有就是最后所显示的位置,一级路由就写在app.component.html中

Angular2之二级路由详解

二级路由则写在对应的父层页面上,我这里就是写在user.component.html中

Angular2之二级路由详解

基本的步骤就是这些,在长期使用Angular 1之后,一直改不过来思维,但其实Angular 2的版本更为清晰的告诉我们每个模块所管理的内容,更容易掌握。

以上这篇Angular2之二级路由详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
运用jquery实现table单双行不同显示并能单行选中
Jul 25 Javascript
js字符串转换成xml对象并使用技巧解读
Apr 18 Javascript
JS中怎样判断undefined(比较不错的方法)
Mar 27 Javascript
laytpl 精致巧妙的JavaScript模板引擎
Aug 29 Javascript
jQuery表单域属性过滤器用法分析
Feb 10 Javascript
JavaScript中扩展Array contains方法实例
Aug 23 Javascript
JavaScript仿微博输入框效果(案例分析)
Dec 06 Javascript
vue2.0中click点击当前li实现动态切换class
Jun 21 Javascript
Vue按需加载的具体实现
Dec 02 Javascript
vue-router项目实战总结篇
Feb 11 Javascript
JavaScript观察者模式原理与用法实例详解
Mar 10 Javascript
JavaScript Image对象实现原理实例解析
Aug 26 Javascript
基于jQuery ztree实现表格风格的树状结构
Aug 31 #jQuery
详解Vue CLI3配置之filenameHashing使用和源码设计使用和源码设计
Aug 31 #Javascript
Bootstrap Table 双击、单击行获取该行及全表内容
Aug 31 #Javascript
vue通过滚动行为实现从列表到详情,返回列表原位置的方法
Aug 31 #Javascript
详解小程序输入框闪烁及重影BUG解决方案
Aug 31 #Javascript
javascript闭包的使用之按钮切换功能
Aug 30 #Javascript
Vue.set() this.$set()引发的视图更新思考及注意事项
Aug 30 #Javascript
You might like
PHP 线程安全与非线程安全版本的区别深入解析
2013/08/06 PHP
PHP处理会话函数大总结
2015/08/05 PHP
大家须知简单的php性能优化注意点
2016/01/04 PHP
Windows Server 2008 R2和2012中PHP连接MySQL过慢的解决方法
2016/07/02 PHP
项目实践之javascript技巧
2007/12/06 Javascript
关于图片的预加载过程中隐藏未知的
2012/12/19 Javascript
Extjs Gird 支持中文拼音排序实现代码
2013/04/15 Javascript
JS控制文本框textarea输入字数限制的方法
2013/06/17 Javascript
jquery实现图片灯箱明暗的遮罩效果
2013/11/15 Javascript
Javascript实现的常用算法(如冒泡、快速、鸽巢、奇偶等)
2014/04/29 Javascript
JS实现仿QQ聊天窗口抖动特效
2015/05/10 Javascript
AngularJS基础学习笔记之表达式
2015/05/10 Javascript
jquery计算鼠标和指定元素之间距离的方法
2015/06/26 Javascript
Javascript实现Array和String互转换的方法
2015/12/21 Javascript
Bootstrap创建可折叠的组件
2016/02/23 Javascript
node.js与C语言 实现遍历文件夹下最大的文件,并输出路径,大小
2017/01/20 Javascript
使用Bootstrap + Vue.js实现添加删除数据示例
2017/02/27 Javascript
理解 Node.js 事件驱动机制的原理
2017/08/16 Javascript
vue 实现剪裁图片并上传服务器功能
2018/03/01 Javascript
详解babel升级到7.X采坑总结
2019/05/12 Javascript
Vue 中可以定义组件模版的几种方式
2019/08/06 Javascript
Element Card 卡片的具体使用
2020/07/26 Javascript
[36:22]VP vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
[01:07:20]DOTA2-DPC中国联赛 正赛 Dynasty vs XG BO3 第二场 2月2日
2021/03/11 DOTA
Python爬虫框架scrapy实现downloader_middleware设置proxy代理功能示例
2018/08/04 Python
PyQT实现菜单中的复制,全选和清空的功能的方法
2019/06/17 Python
使用Python实现图像标记点的坐标输出功能
2019/08/14 Python
python 字符串的驻留机制及优缺点
2020/06/19 Python
美国第二大连锁药店:Rite Aid
2019/04/03 全球购物
中青班党性分析材料
2014/02/16 职场文书
三八活动策划方案
2014/08/17 职场文书
春季运动会加油词
2015/07/18 职场文书
Python快速优雅的批量修改Word文档样式
2021/05/20 Python
聊聊Python String型列表求最值的问题
2022/01/18 Python
十大最帅动漫男主 碓冰拓海上榜,第一是《灌篮高手》男主角
2022/03/18 日漫
详解MongoDB排序时内存大小限制与创建索引的注意事项
2022/05/06 MongoDB