8

मैं अपने HTML में एकाधिक स्थानों पर ng-include src निर्देश का उपयोग कर रहा हूं। प्रत्येक ng-include अपने लिए एक अलग गुंजाइश बना रहा है जो स्पष्ट रूप से मेरे लिए बहुत परेशानी पैदा कर रहा है।अलग-अलग दायरे बनाने से `ng-include` रोकें। AngularJS

उदाहरण के लिए

<div ng-controller="parent"> 
    <div ng-include src="'id1'"> 
    </div> 
    <div ng-include src="'id2'"> 
    </div> 
    <div ng-include src="'id2'"> 
    </div> 
</div> 

ऊपर वर्णित एचटीएमएल में, 4 स्कॉप्स बनाए जा रहे हैं। 1 पेरेंट पर जहां controller परिभाषित किया गया है और 3 प्रत्येक ng-include src पर डिफ़ॉल्ट रूप से बनाया जा रहा है।

क्या ng-include को अपने लिए एक अलग-अलग दायरा बनाने से रोकने के लिए संभव है? यदि यह संभव नहीं है तो क्या इसके लिए कोई कामकाज है?

+0

बस कैसे @pankajparkar अलग गुंजाइश –

+0

घोषित करने के बिना, इसके माध्यम से अपने खुद के निर्देश और लोड टेम्पलेट बनाने? क्या आपके पास कोई उदाहरण है कि यह कैसे किया जा सकता है? –

+0

एनजी-शामिल एक अलग दायरा नहीं बनाता है - यह एक बच्चे का दायरा बनाता है जो माता-पिता से अलग नहीं होता है। एक नए निर्देश के साथ पहिया को फिर से शुरू करने से पहले, मुझे यह समझने में दिलचस्पी होगी कि किस प्रकार की परेशानी हो रही है। एक कारण के लिए एक बच्चे का दायरा बनाया जाता है - यह टेम्पलेट्स को एक-दूसरे के साथ हस्तक्षेप करने से रोकता है। –

उत्तर

14

आपको अपना खुद का निर्देश बनाना होगा जो निर्दिष्ट टेम्पलेट को अलग-अलग स्कोप लोड कर सकता है।

एचटीएमएल

<div ng-controller="parent"> 
    <div my-directive template-path="id1"> 
    </div> 
    <div my-directive template-path="id2"> 
    </div> 
    <div my-directive template-path="id2"> 
    </div> 
</div> 

निर्देशक

.directive('myDirective', function() { 
    return { 
     restrict: 'AE', 
     templateUrl: function(ele, attrs) { 
      return attrs.templatePath; 
     } 
    }; 
}); 

Working Plunkr

+0

यह कुछ भी वापस नहीं कर रहा है। –

+0

@AdityaPonkshe मेरा अद्यतन उत्तर देखें, जोड़ा गया 'प्रतिबंधित:' एई 'विशेषता निर्देश –

+1

पर यह समर्थन किया! दोस्त बहुत - बहुत धन्यवाद। मैं निर्देश में टेम्पलेट पर हार्ड कोडित पथ दे रहा था, लेकिन इसने दायरे के मुद्दे को हल किया। समाधान के लिए +1। –

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