Ich habe eine untergeordnete Komponente erstellt, die eine Methode enthält, die ich aufrufen möchte.
Wenn ich diese Methode aufrufe, wird nur die console.log()
Zeile ausgelöst, die test
Eigenschaft wird nicht festgelegt ?
Unten ist die Schnellstart-Angular-App mit meinen Änderungen.
Elternteil
import { Component } from '@angular/core';
import { NotifyComponent } from './notify.component';
@Component({
selector: 'my-app',
template:
`
<button (click)="submit()">Call Child Component Method</button>
`
})
export class AppComponent {
private notify: NotifyComponent;
constructor() {
this.notify = new NotifyComponent();
}
submit(): void {
// execute child component method
notify.callMethod();
}
}
Kind
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'notify',
template: '<h3>Notify {{test}}</h3>'
})
export class NotifyComponent implements OnInit {
test:string;
constructor() { }
ngOnInit() { }
callMethod(): void {
console.log('successfully executed.');
this.test = 'Me';
}
}
Wie kann ich die test
Eigenschaft auch einstellen ?