मैं अपने निर्देशों में 'नियंत्रक एएस' विकल्प का उपयोग करना चाहता हूं। मुझे "An AngularJS Style Guide for Closure Users at Google" से तर्क का हवाला देते हैं:"नियंत्रक के रूप में" बनाम अलगाव स्कोप
क्यों? एक स्कोप ऑब्जेक्ट बनाने के बजाय सीधे नियंत्रक, पर विधियों और गुणों को डालने, Google क्लोजर क्लास शैली के साथ बेहतर फिट बैठता है। इसके अतिरिक्त, 'नियंत्रक के रूप में' का उपयोग करके यह स्पष्ट करता है कि आप कौन से नियंत्रक तक पहुंच रहे हैं जब एकाधिक नियंत्रक किसी तत्व पर लागू होते हैं। चूंकि हमेशा एक '।' होता है बाइंडिंग में, आप प्रोटोटाइप विरासत मास्किंग प्राइमेटिव के बारे में चिंता करने की ज़रूरत नहीं है।
लेकिन अगर इस निर्देश का उपयोग करने के लिए मैं इस दृष्टिकोण का उपयोग कर एक मुद्दा देख सकता हूं तो निर्देश अलग-अलग दायरे को अलग करता है।
angular.module('cmw').directive('fooWidget', function() {
return {
controller: function() {
this.qux = '123';
},
controllerAs: 'fooWidget',
scope: {
bar: '='
},
template: ' {{fooWidget.qux}} {{bar}} '
};
});
इस मामले में, bar
संपत्ति दायरे से जुड़ा हुआ है, नियंत्रक, जो एक भ्रामक असंगत स्थिति है जहाँ विभिन्न गुणों विभिन्न स्थानों में लिए देखा जाना चाहिए में जो परिणाम के लिए नहीं। इस के आसपास काम करने के लिए 'आधिकारिक' अनुशंसित तरीका क्या है?
अद्यतन: इस बारे में GitHub issue देखें।