2012-08-13 16 views
7

कृपया निर्देश जो मैं लिखा नीचे मिल जाए,AngularJS निर्देश काम नहीं कर रहा

angular.module('netVogue.directives', []). 
    directive('set-First-Active', function() { 
     return function(scope, element, attrs){ 
      alert('sample'); 
      element.addClass("active");  
     }; 
    }); 

मैं नीचे रास्ते में मेरी मॉड्यूल के इस निर्देश को शामिल किया है,

angular.module('netVogue', ['netVogue.filters', 'netVogue.services', 'netVogue.directives']); 

मैं अपने टेम्पलेट में इस निर्देश का इस्तेमाल किया निम्नलिखित प्रारूप में,

<div class="item" ng-repeat="viewPrintcampaign in viewPrintcampaigns" ng-init="first=$first" set-First-Active> 
</div> 

हालांकि, मुझे न तो चेतावनी की कोई प्रतिक्रिया दिखाई देती है और न ही कक्षा मिल रही है जोड़ा। क्या कोई मेरी मदद कर सकता है? कुछ निर्भरता के कारण, मैं 'एनजी-क्लास' का उपयोग नहीं करना चाहता हूं लेकिन एनजी-दोहराने के पहले तत्व के लिए कक्षा = 'सक्रिय' जोड़ना चाहता हूं।

किसी भी मदद की सराहना की जाएगी। अग्रिम में धन्यवाद।

उत्तर

34

निर्देश घोषित करते समय ऊंट केस का नाम होना चाहिए (setFirstActive)।

developer guide on directives देखें।

निर्देशों में ऊंट के नाम जैसे 'ngBind' हैं। इन विशेष पात्रों के साथ ऊंट केस नाम को सांप मामले में अनुवाद करके निर्देश लगाया जा सकता है:, -, या _। वैकल्पिक रूप से निर्देश एचटीएमएल वैधकर्ता अनुपालन करने के लिए एक्स-, या डेटा के साथ prefixed किया जा सकता है। यहां कुछ संभावित निर्देश नामों की एक सूची दी गई है: ng: bind, ng-bind, ng_bind, x-ng-bind और data-ng-bind।

+0

उत्तर आर्टम के लिए धन्यवाद। बस एक और सवाल, सेट-फर्स्ट-एक्टिव नाम संभव नहीं है? हमारे पास पहले से ही संभावित निर्देश नाम हैं जैसे एनजी-बाइंड, एक्स-एनजी-बाइंड जो सेट-फर्स्ट-एक्टिव के समान हैं। –

+1

@Abdul जब आप निर्देश घोषित करते हैं तो इसे 'setFirstActive' नाम दिया जाता है। जब आप निर्देश देते हैं तो आप 'सेट-फर्स्ट-एक्टिव', 'set_first_active', 'डेटा-फर्स्ट-एक्टिव', 'एक्स-फर्स्ट-एक्टिव' का उपयोग कर सकते हैं। –

+0

अब मिल गया। एक बार फिर इसे स्पष्ट करने के लिए धन्यवाद। –

संबंधित मुद्दे