2012-11-01 20 views
6

में एक तत्व के निर्देश के दायरे तक पहुँचने के लिए:कोणीय: कैसे इस सरल कोणीय मॉड्यूल को देखते हुए नियंत्रक

angular.module('fixturesModule', []) 
.directive('clubfixtures', function() { 
    "use strict"; 
    return { 
     restrict: 'E', 
     replace: true, 
     transclude: true, 
     scope: { 
      club : "@club", 
      max : "@max" 
     }, 

    templateUrl: "ClubResultsTemplate.html", 

    controller: function ($scope, $http) { 

     $http.get("data.json").success(function (data) { 
      $scope.results = data; 
     }); 

     $scope.sortBy = "Date"; 

    } 
} 
}); 

मैं कैसे नियंत्रक समारोह में क्लब और अधिकतम उपयोग करते हैं?

धन्यवाद, जेफ

+1

जो नियंत्रक समारोह में? निर्देश के लिए नियंत्रक समारोह में? या निर्देशक के माता-पिता के लिए नियंत्रक समारोह में? –

+0

शेयर सेवा का उपयोग करें? – maxisam

+0

ऊपर दिए गए उदाहरण में दिखाए गए 'नियंत्रक' को असाइन किए गए 'फ़ंक्शन ($ स्कोप, $ http)' में। विशेष रूप से 'club' मान '$ http.get' – jeffeld

उत्तर

5

2 चर (max और club) बस एक गुंजाइश निर्देश के नियंत्रक से इंजेक्शन में परिभाषित किया जाएगा उल्लेख किया है। इसका मतलब है कि आप लिख सकते हैं:

controller: function ($scope, $http) { 

     $scope.max; //do sth with $scope.max 
     $scope.club //so sth with $scope.club 

     $http.get("data.json").success(function (data) { 
      $scope.results = data; 
     }); 
} 

आपके निर्देशक के नियंत्रक में।

यदि आप और पढ़ना चाहते हैं तो मैं http://docs.angularjs.org/guide/directive में "निर्देश परिभाषा ऑब्जेक्ट" का सुझाव दूंगा जहां यह निर्देशों में स्कॉप्स के बारे में बात करता है।

+1

में पथ का हिस्सा बनने के लिए उत्तर देने के लिए धन्यवाद देगा। हालांकि जब मैं 'console.log ($ scope.club) जोड़ता हूं; 'नियंत्रक फ़ंक्शन में, मैं आउटपुट के रूप में अपरिभाषित हूं। – jeffeld

+0

यह काम करना चाहिए। आपको एक प्लंकर सेट करना चाहिए http://plnkr.co/ – maxisam

+1

मुझे और मदद करने के लिए और अधिक कोड देखने की आवश्यकता होगी, विशेष रूप से एचटीएमएल में निर्देश का उपयोग कैसे किया जाता है और इसका उपयोग किस क्षेत्र में किया जाता है। क्या आपको लगता है कि लाइव कोड के साथ jsFiddle/plunk प्रदान करना आपके लिए संभव होगा? –

10

scope: { myAttr: '@' } में '@' के साथ सेट किए गए दायरे पर गुण के बाद नियंत्रक फ़ंक्शन को कॉल किया गया है।

आप एक सरल setTimeout के साथ इस प्रदर्शन कर सकते हैं - http://jsfiddle.net/Q4seC/ देखें

$ attrs, जैसा कि आप मिल गया है, जब आपको उसकी आवश्यकता के लिए तैयार है (कंसोल खोलने के लिए सुनिश्चित करें)।

दिलचस्प है, अगर आप का उपयोग करने के बजाय '=' '@', मूल्य तैयार है और उपलब्ध है, जो बनाता है मुझे लगता है कि यह कोणीय में एक बग माना जा सकता है है ...

+0

यह सही उत्तर है। धन्यवाद! –

+0

यही वह था जो मैं भी सोच रहा था। मेरे लिए वह सही करने के लिए धन्यवाद। – GFoley83

+0

+1 यह सबसे उपयोगी उत्तर है, हालांकि यह अभी भी पुष्टि नहीं करता है कि इन स्कोप गुणों को नियंत्रक फ़ंक्शन के बिंदु पर क्यों अपरिभाषित किया जाता है। एक बग के रूप में पुष्टि की? कोई और जानकारी? –

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