Komunikasi Komponen Adik Beradik dalam Angular 2
Angular 2 telah memperkenalkan perubahan ketara dalam interaksi komponen, dan menghantar data antara komponen adik-beradik boleh menjadi kebimbangan . Berikut ialah beberapa penyelesaian yang berdaya maju:
Menggunakan Perkhidmatan Kongsi
Satu pendekatan yang disyorkan ialah menggunakan perkhidmatan kongsi. Perkhidmatan ini boleh bertindak sebagai medium untuk pertukaran data antara komponen tanpa akses terus antara satu sama lain. Berikut ialah contoh:
// SharedService @Injectable() export class SharedService { dataArray: string[] = []; insertData(data: string) { this.dataArray.unshift(data); } } // ParentComponent import {SharedService} from './shared.service'; @Component({ providers: [SharedService], }) export class ParentComponent {} // ChildComponent import {SharedService} from './shared.service'; @Component() export class ChildComponent { data: string[] = []; constructor(private _sharedService: SharedService) {} ngOnInit() { this.data = this._sharedService.dataArray; } } // ChildSiblingComponent import {SharedService} from './shared.service'; @Component() export class ChildSiblingComponent { data: string = 'Testing data'; constructor(private _sharedService: SharedService) {} addData() { this._sharedService.insertData(this.data); this.data = ''; } }
Dengan menyuntik SharedService ke dalam kedua-dua komponen kanak-kanak, mereka mendapat akses kepada struktur data biasa di mana mereka boleh bertukar maklumat. Kaedah ini juga boleh memudahkan interaksi yang lebih kompleks, membenarkan berbilang komponen melanggan perubahan dalam data kongsi.
Nota:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memudahkan Komunikasi Antara Komponen Adik Beradik dalam Sudut 2?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!