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 相关文章推荐
我的javascript 函数链之演变
Apr 07 Javascript
关于JQuery($.load)事件的用法和分析
Apr 09 Javascript
JQuery的$命名冲突详细解析
Dec 28 Javascript
JavaScript中检查对象property的存在性方法介绍
Dec 30 Javascript
jQuery简单实现彩色云标签效果示例
Aug 01 Javascript
JS取数字小数点后两位或n位的简单方法
Oct 24 Javascript
AngularJS动态添加数据并删除的实例
Feb 27 Javascript
node 使用 async 控制并发的方法
May 07 Javascript
Vue微信项目按需授权登录策略实践思路详解
May 07 Javascript
微信小程序实现的动态设置导航栏标题功能示例
Jan 31 Javascript
js微信分享接口调用详解
Jul 23 Javascript
electron+vue实现div contenteditable截图功能
Jan 07 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
PHP5.2中date()函数显示时间与北京时间相差8小时的解决办法
2009/05/28 PHP
joomla jce editor 解决上传中文名文件失败问题
2013/06/09 PHP
php连接函数implode与分割explode的深入解析
2013/06/26 PHP
php+js实现图片的上传、裁剪、预览、提交示例
2013/08/27 PHP
PHP之正则表达式捕获组与非捕获组(详解)
2015/07/29 PHP
PHP内存使用情况如何获取
2015/10/10 PHP
Prototype1.6 JS 官方下载地址
2007/11/30 Javascript
正则表达式搭配js轻松处理json文本方便而老古
2013/02/17 Javascript
jquery异步跨域访问代码
2013/06/28 Javascript
JavaScript中json使用自己总结
2013/08/13 Javascript
javascript实现的简单的表单验证
2015/07/10 Javascript
自定义刻度jQuery进度条及插件
2015/09/02 Javascript
D3.js实现柱状图的方法详解
2016/09/21 Javascript
JavaScript自定义函数实现查找两个字符串最长公共子串的方法
2016/11/24 Javascript
javascript  数组排序与对象排序的实例
2017/07/17 Javascript
Angular客户端请求Rest服务跨域问题的解决方法
2017/09/19 Javascript
浅谈webpack打包过程中因为图片的路径导致的问题
2018/02/21 Javascript
从vue源码看props的用法
2019/01/09 Javascript
JavaScript判断浏览器运行环境的详细方法
2019/06/30 Javascript
webpack 如何同时输出压缩和未压缩的文件的实现步骤
2020/06/05 Javascript
vuex页面刷新导致数据丢失的解决方案
2020/12/10 Vue.js
[10:05]DOTA2-DPC中国联赛 正赛 iG vs PSG.LGD 选手采访
2021/03/11 DOTA
探究Python多进程编程下线程之间变量的共享问题
2015/05/05 Python
Python实现控制台进度条功能
2016/01/04 Python
Python中使用插入排序算法的简单分析与代码示例
2016/05/04 Python
python3中set(集合)的语法总结分享
2017/03/24 Python
python线程安全及多进程多线程实现方法详解
2019/09/27 Python
30秒学会30个超实用Python代码片段【收藏版】
2019/10/15 Python
如何基于Python实现数字类型转换
2020/02/07 Python
pyinstaller打包找不到文件的问题解决
2020/04/15 Python
python3.9.1环境安装的方法(图文)
2021/02/02 Python
Java如何格式化日期
2012/08/07 面试题
表扬信格式
2014/01/12 职场文书
青年文明号口号
2014/06/17 职场文书
文明礼仪主题班会
2015/08/13 职场文书
前端JavaScript大管家 package.json
2021/11/02 Javascript