100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > angular4父组件向子组件传值 子组件向父组件传值的方法

angular4父组件向子组件传值 子组件向父组件传值的方法

时间:2018-08-21 16:20:33

相关推荐

angular4父组件向子组件传值 子组件向父组件传值的方法

1.父组件向子组件传值 @Input

文件目录

父组件:

father.template.html

<h1>父组件</h1><cmt-child [data]='data'></cmt-child>

ponent.ts

import { Component, OnInit } from '@angular/core';@Component({selector: 'cmt-father',templateUrl: './father.template.html'})export class FatherComponent implements OnInit {data: any = '我是传往子组件的值'ngOnInit() {}ngOnChanges() {}}

子组件:(使用@Input修饰器去接收)

childcomponent.ts

import { Component, OnInit, Input } from '@angular/core';@Component({selector: 'cmt-child',templateUrl: './child.template.html'})export class ChildComponent implements OnInit {@Input() data: any;//接收父组件的值ngOnInit() {console.log(this.data)}ngOnChanges() {console.log(this.data)}}

这样就把值从父组件传到了子组件!

2.子组件向父组件传值(子组件通过方法借助修饰器@output传值给父组件)

子组件

childcomponent.ts

import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';@Component({selector: 'cmt-child',templateUrl: './child.template.html'})export class ChildComponent implements OnInit {@Output('checked') checkedBack = new EventEmitter<any>();id:any ="我是传给父组件的值"ngOnInit() {}ngOnChanges() {}checkedCallback() {this.checkedBack.emit(this.id);}}

child.template.html.html

<h1>子组件</h1><button (click)='checkedCallback()'>点击传值给父组件</button>

父组件

father.template.html

<h1>父组件</h1><cmt-child (checked)="checkedBack($event)"></cmt-child>

ponent.ts

import { Component, OnInit } from '@angular/core';@Component({selector: 'cmt-father',templateUrl: './father.template.html'})export class FatherComponent implements OnInit {ngOnInit() {}ngOnChanges() {}checkedBack(event) {console.log(event)}}

这样子组件通过点击就把值传递给了父组件!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。