في AngularJs ، يرث وحدة التحكم ، ونطاق التعشيش النطاق الشائع هو النطاق. بشكل افتراضي ، عندما لا يمكن العثور على خاصية في النطاق الحالي ، سيتم البحث في نطاق الوالد ، إذا لم يتم العثور عليها حتى يتم العثور على $ Rootscope.
ولكن في بعض الحالات ، يكون Rootscope هو وحدة التحكم الخاصة بنا ، ومن المستحيل كتابة عدد كبير من أساليب السمات العامة إلى Rootscope.
على سبيل المثال ، إذا كانت هناك صفحات مماثلة متعددة ، فكلها مع فتات الخبز ، وأشرطة البحث ، وأرسام الأدوات ، والجداول والعناصر الأخرى. إذا كانت جداول فتات الخبز تعتبر مباشرة ، فسيكون هناك حتما العديد من التكوينات المماثلة التي تحتاج إلى تمريرها من وحدة التحكم إلى المكون ، وسيتم أيضًا إنشاء العديد من الطرق الشبيهة بالأدوات لمعالجة بيانات المعالجة. في هذا الوقت ، من الواضح أنه من القبيح تكرار نفس الرمز في وحدة التحكم في كل صفحة ، لذلك يلزم الميراث.
وجدت حلاً على stackoverflow ، اتضح أن AngularJS قد أخذ هذا في الاعتبار ويوفر وحدة تحكم $
var app = Angular.module ('AngularJS-Starter' ، []) ؛ app.controller ('parentCtrl' ، function ($ scope) {// أنا الشقيق ، ولكن أريد أن يكون بمثابة الوالدين}) ؛ app.controller ('childctrl' ، function ($ scope ، $ controller) {$ controller ('parentctrl' ، {$ spec: $ spec}) ؛ // this work}) ؛ما سبق هو المعرفة ذات الصلة بأن وحدة تحكم AngularJS ترث من وحدة تحكم أخرى المقدمة إليك. آمل أن يكون ذلك مفيدًا للجميع!