如何在Angular2中将变量从子节点传递给子节点

时间:2017-07-26 15:50:34

标签: javascript angular typescript

我有三个组成部分:父母(P)两个孩子(C1)(C2) (他们是 P 组件的两个孩子,他们没有嵌套) 在父模板中,它看起来像

<c1-component></c1-component>
<c2-component></c2-component>

我在myVar(数字)中有一个变量C1,我想在C2组件中减少和增加,并将此变量的新值返回给C1 (所以,我想传递的不是函数,而是变量)。我怎样才能将此变量从C1传递给C2? 我想在没有共享服务的情况下解决这个问题。

1 个答案:

答案 0 :(得分:1)

您可以使用EventEmitter从child1向父级发出变量。将其作为父项中的输入捕获,然后将其传递给选择器中的child2。

孩子1:

import { Output } from '@angular/core';
@Output() testVariable = new EventEmitter();

在父级中捕获并在父级html中发出:

<c2-component [testVariable]="testVariable"></c2-component>

孩子2:

import { Input} from '@angular/core';
@Input() testVariable;