Angular通过Input()在组件间传递数据时不会触发ngOnChanges.
创始人
2024-10-29 18:30:23
0

要解决这个问题,首先需要确保输入属性名字发生变化时会触发ngOnChanges。 因此,可以使用@Input装饰器的setter方法。这样,当输入属性更改时,setter将被调用,从而触发ngOnChanges。

示例如下:

// parent.component.ts import { Component } from '@angular/core';

@Component({ selector: 'app-parent', template:

Parent

, styleUrls: ['./parent.component.css'] }) export class ParentComponent { parentData = 'message from parent'; }

// child.component.ts import { Component, Input, OnChanges, SimpleChanges } from '@angular/core';

@Component({ selector: 'app-child', template:

Child

{{ childData }}

, styleUrls: ['./child.component.css'] }) export class ChildComponent implements OnChanges { @Input() childData: string;

ngOnChanges(changes: SimpleChanges) { console.log('ngOnChanges - childData', changes); } }

在ChildComponent中的@Input("childData") getter方法将返回输入属性的值。 setter方法用于通知框架,当属性值被修改时需要更新值。

这样,当在父组件中修改值时,会触发ngOnChanges并更新子组件中的值。

相关内容

热门资讯

透视代打!wepoker透视脚... 透视代打!wepoker透视脚本免费app,wepoker到底有没有透视(详细透视是真的)运wepo...
透视规律!aapoker发牌逻... 透视规律!aapoker发牌逻辑(透视)aapoker能控制牌吗,微扑克教程(有挂黑科技)1)aap...
透视玄学!wepoker有脚本... 透视玄学!wepoker有脚本吗,we poker游戏下(详细透视脚本);1、操作简单,无需注册,只...
透视新版!aapoker透视方... 透视新版!aapoker透视方法(透视)aapoker真的假的,详细教程(有挂解说)aapoker真...
透视美元局!wejoker辅助... 透视美元局!wejoker辅助机器人,wepoker有没有挂(详细正规)1、下载好wejoker辅助...
透视计算!aapoker免费透... 透视计算!aapoker免费透视脚本(透视)aapoker怎么设置提高好牌几率,切实教程(有挂辅助)...
透视好友房!wejoker辅助... 透视好友房!wejoker辅助机器人,wepoker是不是有人用挂(详细辅助软件价格);1.wepo...
透视免费!aapoker怎么提... 透视免费!aapoker怎么提高中牌率(透视)aapoker怎么设置抽水,详细教程(有挂黑科技);一...
透视ai代打!wepoker免... 透视ai代打!wepoker免费脚本咨询,wepoker轻量版书签(详细辅助机器人)1、下载好wep...
透视苹果版!aapoker辅助... 透视苹果版!aapoker辅助器是真的吗(透视)aapoker真的假的,微扑克教程(有挂详情)1、a...