Angular2中@Input和@Output之间有什么区别
发布时间:2020-12-17 08:53:00 所属栏目:安全 来源:网络整理
导读:我刚学习Angular2,我遇到了@Input和@Output.两者有什么区别. @Input()是将数据传递给组件 class ChildComponent { @Input() data;}@Component({ template: `child [data]="parentData"/child})class ParentComponent { parentData;} 这里ParentComponent通过
我刚学习Angular2,我遇到了@Input和@Output.两者有什么区别.
@Input()是将数据传递给组件
class ChildComponent { @Input() data; } @Component({ template: `<child [data]="parentData"></child> }) class ParentComponent { parentData; } 这里ParentComponent通过@Input()属性将数据传递给子节点. [data]与子组件中的属性名称相同.如果要使用与属性名称不同的名称,则可以使用@Input(‘diff-name’) @Output是从组件中发出数据(事件) class ChildComponent { @Output() dataChange = new EventEmitter(); click() { dataChange.emit('new Value'); } } @Component({ template: `<child (dataChange)="onDataChange($event)"></child> }) class ParentComponent { onDataChange(event) { console.log(event); } } 这里ChildComponent有一个它发出事件的@Output.父级正在侦听并将回调传递给(dataChange).现在每次子项发出一个事件时,将调用父回调来传递事件. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |