دي مشكلة قابلتني من شوية في #Angular وحبيت اشاركها معاكم
دي مشكلة قابلتني من شوية في #Angular وحبيت اشاركها معاكم
عملت component بيستقبل function من component تاني وبيحط فيها data معينة والمفروض ال function دي بتعدل الداتا وترجع الداتا الجديدة
ودة شكل ال component
<my-component [transform]="transform"></my-component>
ودي الفانكشن
function transform(data){
return {...data, newProp: this.newProp}
}
المشكلة ان this.newProp دايما undefined جوة الفنكشن دي بالذات مع انها بتدي قيمة جوة اي method تانية في الكلاس ومفيش اي حاجة بتغير قيمتها بعد ما بتتعرف في ال constructor
ياتري اية السبب؟ 🤔
فانتبهت ان this هنا بتشاور علي ال child class لانها بتشتغل هناك مش هنا
وعشان احل المشكلة دي كان ممكن اعمل bind للفنكشن او ببساطة احولها لـ arrow function عشان this في الحالة دي تكون ال outer context بتاعتها اللي هي ال component الاصلية
transform = (data)=>({...data, property: this.property})
بس يا سيدي وكدة المشكلة اتحلت ببساطة
لو عاوز تشوف مشكلات برمجية وحلها تابعنا هنا
telegram: @mobarmegeen
instagram: @mobarmegeen
facebook: @mobarmegeen
linkedin: @dibo