繁体   English   中英

Angular中的父子通信

[英]Parent and Child communication in Angular

我有两个问题:

  1. 如果我们将任何变量从父组件发送到子组件,并且比子组件中的任何更改(比如说值更改)。 此更改是否会自动反映在 Parent 组件中? 如果不是,我该如何反映?

  2. 我有一个演示,其中 Parent comp 将数组发送给孩子(孩子具有添加/编辑功能)。 每当我添加或更新任何元素更改时,也会反映在父组件中(我在父模板中显示列表)。

所以最初我认为我不需要关心将更改发送回父级,因为它已经在工作了。

但是,对于更新,我使用了 2 个变量 editForm 和 edit_id,当我设置 editForm = false 和 edit_id = 0 时,它们也由父级发送给子级。更改未反映在父级中,只有子级变量发生了更改。

所以现在两者都让我感到困惑。

这里可能有什么问题? 以下是您可以找到我的代码的链接:

https://stackblitz.com/edit/angular-rw74sc

Angular 与此无关 与JavaScript 是按引用传递还是按值传递语言有关?

因此,在 java 脚本中,当您复制原始类型(数字、字符串等)时,值将被复制而不是引用本身,但在对象的情况下,引用将被复制并且更改也会反映到父 object。

下面是引用类型和值类型的有趣示例

 var obj={a:10}; var copyObj=obj; obj.a=12; console.log(obj.a);//example of reference type you can see the output will be 12; var a=10; var b=a; b=12; console.log(a);//example of value type here output is still 10

这里还有一个相关的 SO

从孩子到父母有很多沟通方式,例如你可以使用@Output共享服务主题事件发射器

这是一个与孩子父母沟通相关的 SO ans

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM