第一种方法(传单个或者多个参数):

主页面方法:

先添加引用:private _routes: Router,

Details(PBSCode) {
this._routes.navigate(['pbs-manage/pbs-detail', PBSCode]);
}
路由:
//  reuse: true 可以使本页面不关闭
{
path: 'pbs-detail/:PBSCode',
component: PBSDetailComponent,
data: { title: '详情', reuse: true }
}
子页面接收:
ngOnInit() {
this.route.queryParams.subscribe((e) => {
this.PBSCode= e.get('PBSCode');
});
}
缺点:该方法会把参数显示在地址栏上
第二个方法(传对象):
主页面: private _routes: Router,
添加引用:
Details(bb,cc) {
this.router.navigate(['/workOrder-manage/challenge-list'], { queryParams: { aa: bb, cc: dd } });
}
子页面:
ngOnInit() {
this.route.queryParams.subscribe((e) => {
this.aa= e.aa;
this.cc = e.cc ;
});
}
备注:该方式与第一个方法的缺点一致,好处是不用配置路由
第三种方式(模态窗)
// 补充信息
主页面方法:
// componentParams中的是传的值 content是子页面的名字
EditCarrier(ContractID) {
const options = {
wrapClassName: 'modal-lg custom-modal',
content: PublicContractEditCarrierComponent,
footer: false,
componentParams: {
ContractID: ContractID
}
};
// 子页面关闭触发的事件
this.modal.open(options).subscribe(result => {
if (result === 'onDestroy') {
this.GetDatas(0);
}
});
}
子页面接收:
@Input()
set dataci(ci: number) {
this.ContractID = ci;
}
备注:主页面的传值参数名与子页面接收的参数名必须一致
第四中:
主页面:
html:
//子页面的组件名字 
<app-back-admin-assessment-early-warning-index (receive)="GetParameters($event)"></app-back-admin-assessment-early-warning-index>
ts页面:
GetParameters(e) {
console.log(e);
}
子页面:
// receive这个名字随意 但主页的触发方法的名字要与这里的名字一致
@Output('receive') checkedBack = new EventEmitter<any>();
//触发这个方法就可以传值到主页面
this.checkedBack.emit(this.params);

Angular 组件之间的传值的更多相关文章

  1. vue中父子组件之间的传值、非父子组件之间的传值

    在Vue实例中每个组件之间都是相互独立的,都有自己的作用域,所以组件之间是不能直接获取数据.在项目开发中一个组件可能需要获取另一个组件的值,我们可以通过其他方法间接的获取.所以,获取的方法有以下几种: ...

  2. vue.js+koa2项目实战(五)axios 及 vue2.0 子组件和父组件之间的传值

    axios 用法: 1.安装 npm install axios --save-dev 2.导入 import axios from 'axios'; 3.使用 axios.post(url,para ...

  3. vue组件之间的传值——中央事件总线与跨组件之间的通信($attrs、$listeners)

    vue组件之间的通信有很多种方式,最常用到的就是父子组件之间的传值,但是当项目工程比较大的时候,就会出现兄弟组件之间的传值,跨级组件之间的传值.不可否认,这些都可以类似父子组件一级一级的转换传递,但是 ...

  4. vue项目中的父子组件之间的传值。

    首先说一下父子组件就是在一个vue文件中引入另一个vue文件,被引入vue文件就是子组件,引入vue文件的vue文件就是父组件.而在父组件中是不能直接调用子组件中的变量值的.下面详细说一下,父子组件之 ...

  5. vue组件之间的传值

    vue中组件之间的传值有好几种情况 1.父向子传值 父组件向子组件传值使用props,直接上实例 city.vue是父组件,list.vue是子组件city.vue里定义cities和hotCitie ...

  6. 浅谈vue父子组件之间的传值

    前言:本章主要说下父子组件的传值,为商品列表组件之间的传值做一个基础预热.Github:https://github.com/Ewall1106/mall(请选择分支chapter23) 1.父组件向 ...

  7. vue 组件之间互相传值:兄弟组件通信

    vue 组件之间互相传值:兄弟组件通信我们在项目中经常会遇到兄弟组件通信的情况.在大型项目中我们可以通过引入 vuex 轻松管理各组件之间通信问题,但在一些小型的项目中,我们就没有必要去引入 vuex ...

  8. vue 非父子组件之间的传值(Bus/总线/发布订阅模式/观察者模式)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. vue 学习五 深入了解components(父子组件之间的传值)

    上一章记录了 如何在父组件中向子组件传值,但在实际应用中,往往子组件也要向父组件中传递数据,那么此时我们应该怎么办呢 1.在父组件内使用v-on监听子组件事件,并在子组件中使用$emit传递数据 // ...

随机推荐

  1. ubuntu 文件及子文件夹的权限的查看及修改

    查看linux文件的权限:  查看path路径下名为filename的文件或文件夹的权限:   * -R   结果:全部子目录及文件权限改为 777

  2. beego5---gosqlite安装

    WindowsWindows下的安装也非常简单,只要到 SQLite3 的下载页面,下载 Windows 下的预编译包 DLL 的压缩包(sqlite-dll-win32-x86-XXX.zip),然 ...

  3. leetcode 656. Coin Path

    Given an array A (index starts at 1) consisting of N integers: A1, A2, ..., AN and an integer B. The ...

  4. linux网络socket 接口转

    linux网络socket 接口 1.socket函数:一个进程必须做的第一件事就是调用socket函数获得一个文件描述符. ------------------------------------- ...

  5. 解决多次异步请求紊乱问题 - JavaScript

    加入目前的需求这样的:       左边的菜单链接,点击后通过异步请求返回其HTML代码,然后innerHTML到右面的DIV中,加入切换菜单的速度非常快,最终会导致请求紊乱. 可以加入消息管理机制, ...

  6. Linux下安装Openfire 4.2.1

    1.下载安装包,下载地址:http://www.igniterealtime.org/downloads/index.jsp#openfire 2.将下载的安装包复制到linux服务器的/opt目录下 ...

  7. apple IOS的base64编解码

    <pre style="word-wrap: break-word; white-space: pre-wrap;">/* * Copyright (c) 2003 A ...

  8. 并不对劲的bzoj3932: [CQOI2015]任务查询系统

    传送门-> 离线操作听上去很简单,遗憾的是它强制在线. 每个时刻可以看成可持久化线段树中的一个版本,而每一个版本的线段树维护的是值某一段区间且在这个版本对应的时刻出现的数之和. 会发现同一时刻可 ...

  9. 【IOI 1996】 Network of Schools

    [题目链接] 点击打开链接 [算法] 对于第一问,将这个图缩点,输出出度为零的点的个数 对于第二问,同样将这个图缩点,输出入度为零.出度为零的点的个数的最大值 [代码] #include <al ...

  10. c# 读取内存

    C# 用内存映射文件读取大文件(.txt)   网上有好多这类的文章,大部分都是用C/C++写的,也有部分C#写的,都思想都是一样的,调用win32 API. 至于什么是内存映射文件,相信还是有好多人 ...