angular 之路由
1、用angular-cli建一个工程自带路由怎么做?
命令:ng new 项目名 --routing
2、怎么使用路由器和路由器的一些基本使用。
//html页面 <a routerLink="/page1r" routerLinkActive="active">page1</a>
<a routerLink="/page2" routerLinkActive="active">page2</a>
<a routerLink="/admin" routerLinkActive="active">Admin</a>
<a [routerLink]="[{ outlets: { popup: ['compose'] } }]">Contact</a> //'outlets'指定路由内容放置到那个router-outlet 容器内位置 <router-outlet></router-outlet>
<router-outlet name="popup"></router-outlet>
//ts页面
import { Routes, RouterModule } from '@angular/router';
const routes : Routes = [ {path: '',redirectTo:"/page1",pathMatch:"full"},//重定向
{path: 'page1',component:Page1Component},//路径定向
{path: 'page2',component:Page2Component},
{ path: 'compose', component: ComposeMessageComponent, outlet: 'popup' }, //路由到router-outlet属性名name 值为“popup”的路由容器上
{path: '**',component:Page404Component},//注意 路由是从上到下找的,所以不要把万能匹配放到前面去,不然在其后面的路由将会失效,
//所以404路由永远是放在最后面的
];
@NgModule(
{ imports: [ RouterModule.forRoot( appRoutes )//如果时分支路由这时要改成forChild(分支路由名) ],
exports: [ RouterModule ] }
)
3、路由传参
如果你想路由传参可用2种方式 :
路由参数(paramMap)和查询参数(queryParamMap)中的参数访问;
如: 路由是这样写的
//路由位置 http://localhost:4200/page1/fan/page3/lia?fang=1&liang=2#qwer
<a [routerLink]="['/page1','fan','page3','lia']" routerLinkActive="active" [queryParams]="{'fang':1,'liang':2}" fragment="qwer">page1</a>
{path: 'page1/:id/page3/:id1',component:Page1Component}
// ..ts
import {ActivatedRoute} from '@angular/router';//路由参数获取用‘ActivatedRoute’
constructor(
private _activatedRoute:ActivatedRoute
) {
ngOnInit() {
this._activatedRoute.queryParamMap
.subscribe(rap=>{ //这时是获得查询参数{'fang':1,'liang':2}
console.log(rap)
});
this._activatedRoute.paramMap
.subscribe(rap=>{//这里是获得路由参数{'id':1,'id1':2}
console.log(rap)
})
}
总结:
看了很多路angular路由文,反过来再看angular官网路由,发现其实官网写的最好,只是太多了,一时收获不了,当看多了细碎的路由文后再头看官网其实多读几篇就基本都知道用了
官方:https://www.angular.cn/guide/router
angular 之路由的更多相关文章
- Angular 4 路由介绍
Angular 4 路由 1. 创建工程 ng new router --routing 2. 创建home和product组件 ng g component home ng g component ...
- angular -- ng-ui-route路由及其传递参数?script标签版
考虑到 多视图等因素,所以 angular 的路由考虑使用 ng-ui-route来做,而不使用 ng-route来做! <!DOCTYPE html> <html lang=&qu ...
- angular 前端路由不生效解决方案
angular 前端路由不生效解决方案 Intro 最近使用 Angular 为我的活动室预约项目开发一个前后端分离的客户端,在部署上遇到了一个问题,前端路由不生效,这里记录一下.本地开发正常,但是部 ...
- Angular配置路由以及动态路由取值传值跳转
Angular配置路由 1.找到 app-routing.module.ts 配置路由 引入组件 import { HomeComponent } from './home/home.componen ...
- angular的路由
AngularJS 路由允许我们通过不同的 URL 访问不同的内容. 通过 AngularJS 可以实现多视图的单页Web应用(single page web application,SPA). 下面 ...
- angular中路由的实现(针对新手)
最近搜了一下网上的教程,看完总感觉有点糊涂,对于新手来说可能云里雾里,所以写一个最简单的路由来给大家做个指引. 首先当然需要准备angular,下载地址:https://angular.io/ 现在a ...
- 关于Iscroll.js 的滑动和Angular.js路由冲突问题
Iscroll主要应用于app移动端开发. 主要代码: window.onload=function(){ var myIscroll=new IScroll(".headerNav&quo ...
- 理解 angular 的路由功能
相信很多人使用angular 都是因为他路由功能而用的 深入理解ANGULARUI路由_UI-ROUTER 最近在用 ionic写个webapp 看到几个demo中路由有好几种,搞的有点晕,查下资料研 ...
- Angular动画——路由动画及高阶动画函数
一.路由动画 路由动画需要在host元数据中指定触发器.动画注意不要过多,否则适得其反. 内容优先,引导用户去注意到某个内容.动画只是辅助手段. 定义一个进场动画,一个离场动画. 因为进场动画和离场动 ...
随机推荐
- etc/fstab
etc/fstab 就是在开机引导的时候自动挂载到linux的文件系统 设备名称 挂载点 分区的类型 挂载选项 dump选项 fsck选项UUID=ce25cdc7-434f-420b-b3 / ex ...
- postgresql 表空间创建、删除
表空间:字面上理解就是表存储的物理空间,其实包括数据库的表.索引.序列等. 可以将表空间创建在服务器的不同分区,这样做的好处有: 一.如果初始化集群所在分区已经用光,可以方便的其他分区上创建表空间已达 ...
- | unauthenticated user (1130, "Host '127.0.0.1' is not allowed to connect to this MySQL server")
mysql> show processlist;+----+----------------------+-----------------+------+---------+------+-- ...
- collision weaknesses
15.1. hashlib — Secure hashes and message digests — Python 3.5.6 documentation https://docs.python.o ...
- Python之numpy基本指令
https://blog.csdn.net/mmm305658979/article/details/78745637 # -*- coding: utf-8 -*- 多加练习才是真 import n ...
- jQuery.outerWidth() 函数具体解释
outerWidth()函数用于设置或返回当前匹配元素的外宽度.外宽度默认包含元素的内边距(padding).边框(border),但不包含外边距(margin)部分的宽度.你也能够指定參数为true ...
- 使用Navicat连接Mysql报错:can not get hostname for your address
以管理员的身份使用cmd命令运行netsh winsock reset即可!
- LeetCode——Palindrome Number
Determine whether an integer is a palindrome. Do this without extra space. Some hints: Could negativ ...
- centos linux系统日常管理3 服务管理ntsysv,chkconfig,系统日志rsyslog,last ,lastb ,exec,xargs,dmesg,screen,nohup,curl,ping ,telnet,traceroute ,dig ,nc,nmap,host,nethogs 第十六节课
centos linux系统日常管理3 服务管理ntsysv,chkconfig,系统日志rsyslog,last ,lastb ,exec,xargs,dmesg,screen,nohup,cur ...
- maven+springboot项目使用idea打包
首先简单了解一下maven: 概述 日常开发中,我们用到的maven相关功能大概以下几种: 1. 管理jar依赖 2. 构建项目(打包.编译等) 3. 发布项目(共享.上传至服务器,供他人使用) 简单 ...