Events
থেকে @ionic/angular
প্যাকেজ আয়নের 5. থেকে সরানো Got You Ionic5 পরিবর্তন ভঙ্গ দেখতে পারেন এখানে ।
যেমনটি ব্রেকিং পরিবর্তনগুলির উল্লেখ করা হয়েছে, আপনার ব্যবহার করা উচিত Observables
।
উদাহরণস্বরূপ, আপনি নিম্নলিখিত পরিষেবা তৈরি করতে পারেন:
import {Injectable} from '@angular/core';
import {Subject} from 'rxjs';
@Injectable({
providedIn: 'root'
})
export class GlobalFooService {
private fooSubject = new Subject<any>();
publishSomeData(data: any) {
this.fooSubject.next(data);
}
getObservable(): Subject<any> {
return this.fooSubject;
}
}
এখন, আপনি যেকোন উপাদান যেমন সাবস্ক্রাইব করতে পারেন app.component.ts
:
@Component({
selector: 'app-root',
templateUrl: 'app.component.html',
styleUrls: ['app.component.scss']
})
export class AppComponent {
constructor(private globalFooService: GlobalFooService) {
this.initializeApp();
}
initializeApp() {
// other code
this.globalFooService.getObservable().subscribe((data) => {
console.log('Data received', data);
});
}
}
এখন, আপনাকে কেবলমাত্র অন্য কোনও উপাদান থেকে ইভেন্টটি ছড়িয়ে দিতে হবে:
@Component({
selector: 'app-home',
templateUrl: 'home.page.html',
styleUrls: ['home.page.scss']
})
export class HomePage {
constructor(private globalFooService: GlobalFooService) {
}
onSomeButtonClick() {
this.globalFooService.publishSomeData({
foo: 'bar'
});
}
}
এটি একটি খুব সাধারণ সমাধান / উদাহরণ বা এর বিকল্প Events
তবে আপনি কোনও বিষয়বস্তু সহ একটি নাম স্পেস ইভেন্ট করতে আপনার কোডটিকে আরও সামঞ্জস্য করতে পারেন।
আমি এটিতে একটি ব্লগ লিখেছি যা আপনাকে একটি পূর্ণ বৈশিষ্ট্যযুক্ত সমাধান দিতে পারে যাতে খুব কম কোড পরিবর্তন হলে আপনি আপনার অ্যাপ্লিকেশনটি আপগ্রেড করতে পারেন।
https://medium.com/wizpanda/dealing-with-breaking-change-in-ionic-5-db3ba711dfcd