कोणीय जेएस में कोणीय डॉक्स में उल्लिखित डीओएम आधारित नियंत्रक विरासत है।कोणीय जेएस नियंत्रक विरासत
<div ng-controller="BaseController">
<p>Base Controller Value: {{value}}</p>
<button ng-click="updateValue()">Update In Base</button>
<div ng-controller="DerivedController">
<p>Derived Controller Value: {{value}}</p>
<button ng-click="updateValue()">Update In Derived</button>
</div>
</div>
दायरा चर "मान" केवल बेसकंट्रोलर में मौजूद है। इसके आधार पर, बेसकंट्रोलर या व्युत्पन्न नियंत्रक में किसी विधि पर मान को बदलने के दौरान, मैं चाहता हूं कि दोनों मानों को अद्यतन करने की आवश्यकता हो। लेकिन केवल व्यक्तिगत स्कोप चर अद्यतन हो जाता है।
यहाँ एक बेला एक ही उदाहरण का प्रदर्शन है: http://jsfiddle.net/6df6S/1/
कैसे एक स्तर पर परिवर्तन तत्काल बच्चे और वर्तमान क्षेत्र के तत्काल माता-पिता के लिए प्रचार करने के लिए बनाया जा सकता है।
हम
$ दायरे का उपयोग करके यह लागू कर सकते हैं। $ घड़ी
इसमें या ऐसे किसी पर नजर रखने वालों का उपयोग किए बिना ऐसा करने के लिए कोई तरीका है?
संपादित करें 1:।
$ दायरे का उपयोग करके $ यहाँ देख मैं क्या मतलब
$scope.$watch("value", function() {
$scope.$broadcast("childChangeListener"); //Downwards to all children scopes
$scope.$emit("parentChangeListener"); //Upwards to all parent scopes
});
मैं तरीकों से मूल्य ऐसे तंत्र का उपयोग किए बिना सभी कार्यक्षेत्रों में अपडेट जायेगा लिए देख रहा था है । $broadcast
प्रलेखन से::
में के बारे में अधिक का उपयोग करें $ rootScope –
वहाँ $ rootScope में गुण और विधियों डाल करने के लिए बिना $ गुंजाइश साझा करने के लिए कोई तरीका है? –
कृपया $ rootScope का उपयोग न करें। नियंत्रकों के बीच डेटा साझा करने के बजाय एक सेवा का उपयोग करें (मेरा जवाब देखें)। –