2017-05-24 7 views
5

के साथ नियंत्रक नहीं मिल सकता है। मैं अपने प्रोजेक्ट के लिए कोणीय 1.6 और एचटीएमएल टेम्पलेट्स के लिए पगजेस के साथ रूटिंग के लिए कोणीय-यूई-रूटिंग का उपयोग कर रहा हूं। मैं अपने आवेदन में Lazyload लागू करने के लिए कोशिश कर रहा हूँ, लेकिन किसी भी तरह अपने काम नहीं कर रहा जेड की वजह से हो सकता है। कोड:कंट्रोलर को डीओएम में लोड किया गया है लेकिन दृश्य लोड नहीं किया गया है और जेड (पगज)

var app = angular.module('myApp',['ui.router','oc.lazyLoad']); 
app.config(['$ocLazyLoadProvider', function($ocLazyLoadProvider 
{ 
    $ocLazyLoadProvider.config({ 
    debug: true, 
    modules: [{ 
    name: 'js', 
    files: ['js/*'] 
}] 
}); 
}]); 

.state("exampleState", { 
     url: '/example', 
     templateUrl: '/example', 
     controller:'exampleCtrl', 

     resolve: { 
      deps: ['$ocLazyLoad', function($ocLazyLoad) { 
       return $ocLazyLoad.load({ 
        files: ['/js/exampleCtrl.js'] 
       }) 
      }] 
     } 
    }) 

नियंत्रक:

app.controller('exampleCtrl',function($scope){ 
    console.log('controller loaded'); 
}); 

और दृश्यपटल मैं नोड उपयोग कर रहा हूँ HTML में इन जेड कन्वर्ट करने के लिए है, इसलिए जब 'templateUrl' रूटिंग सेवाओं द्वारा पहुँचा जा सकता है यह इस पर पुनः निर्देशित किया जाएगा पर कोड:

app.get('/example', function(req, res) { 
    res.render('/example'); 
}); 

यह example.jade को देखता है। मैं

कंसोल में इस मिल रहा है [$ नियंत्रक: ctrlreg] नाम 'exampleCtrl' के साथ नियंत्रक पंजीकृत नहीं है।

नियंत्रक फ़ाइल को डोम में लोड करने के बाद भी और यह भी प्रस्तुत नहीं किया जा रहा है। मुद्दे के बारे में किसी भी मदद का स्वागत किया। आप

+0

आप कम से कम कोड के साथ StackSnippet/Plnkr/JSFiddle बनाने कृपया इस मुद्दे को पुन: पेश करने के बजाय:

app.controller('exampleCtrl',function($scope){ console.log('controller loaded'); }); 

का उपयोग कर के मैं angular.module('myApp').controller(,,,);

संदर्भ का इस्तेमाल किया। – Tushar

+0

निश्चित @ तुषार थोड़ी देर में अपडेट होगा !! –

+0

प्रदान किए गए कोड से बताना मुश्किल है, लेकिन यह सुनिश्चित करें कि आपका समाधान एक वादा वापस कर रहा है। हो सकता है कि अगर आप संकल्प को पूरी तरह हटा दें तो यह प्रस्तुत करता है या नहीं। – frikkievb

उत्तर

4

और मैं समाधान पाया है की कोशिश, समस्या मॉड्यूल जब नियंत्रक के निर्माण के लिए वैश्विक चर रहा था। ocLazyLoad Issues

1

मुझे लगता है कि आप इस थोड़ा अलग करना चाहिए धन्यवाद। इस प्रयास करें: बहुत अधिक खोज के बाद

$stateProvider.state('exampleState', { 
    url: "/example", 
    views: { 
    "exampleLazyLoadView": { 
     controller: 'exampleCtrl', 
     templateUrl: '/example.html' 
    } 
    }, 
    resolve: { // Any property in resolve should return a promise and is executed before the view is loaded 
    loadMyCtrl: ['$ocLazyLoad', function($ocLazyLoad) { 
      return $ocLazyLoad.load('/js/exampleCtrl.js'); 
    }] 
    } 
}); 
+0

ने पहले से ही कोशिश की है! –

+2

यह एक कोड काम करता है सभी कोड बारबेक्यू प्रदान करें। मुझे लगता है कि आपको कहीं और समस्या है (डबल चेक पथ)। मुझे यकीन नहीं है कि 'फाइलें: [' जेएस/* '] 'वैध घोषणा है। –

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

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