Sau khi đọc này section about component interaction - Tôi đã nhận thấy rằng có một cách khác để giao tiếp từ trẻ để cha mẹ (mà đã không thực sự ghi nhận có):Góc - thông tin liên lạc từ cha mẹ sang con không có giấy tờ?
Nó chỉ ra rằng nếu Tôi có một tầng lớp phụ huynh:
@Component({
selector: 'my-app',
template: `
<div>
<h2>Hello {{name}}</h2>
<my-item></my-item>
</div>
`,
})
export class App {
name:string;
go1()
{
alert(2)
}
constructor() {}
}
Và trong thành phần con - tôi Tiêm một loại parent
vào ctor:
@Component({
selector: 'my-item',
template: `
<div>
<input type="button" value='invoke parent method' (click) = "myGo()"/>
</div>
`,
})
class MyItem {
name:string;
private parent1 : App;
myGo()
{
this.parent1.go1() //<--- access is available here
}
constructor(private parent1 : App)
{
this.parent1 = parent1; //<------------ manually, unlike service
this.name = `Angular! v${VERSION.full}`
}
}
Sau đó góc thấy rằng tôi cố gắng ing để tiêm một lớp kiểu cha và nó cho phép tôi truy cập vào nó.
Tất nhiên, nhấp chuột hoạt động.
Câu hỏi:
Bên cạnh lựa chọn thay thế khác mà tôi đã biết, là nó ghi ở đâu không? hoặc là nó chỉ là một tính năng mà tôi không thể dựa vào nó
Nếu nó không được ghi lại, tôi sẽ không dựa vào nó. Nó có thể được thay đổi trong bản phát hành nhỏ tiếp theo mà không có nó được liệt kê như là một sự thay đổi đột phá ... – fredrik