2014-05-08 13 views
7

कोणीय-UI-बूटस्ट्रैप जोड़ने और चलने वाली गंदगी को जोड़ने के बाद मेरे यमन ऐप पर सेवा मिलती है, यह पूरी तरह से चलती है और मैं जिस मॉडल को दिखाना चाहता हूं वह सही ढंग से प्रदर्शित होता है, लेकिन एक बार जब मैं परेशान करता हूं निर्माण, मुझे अपने कंसोल में एक अज्ञात प्रदाता त्रुटि मिलती है।कोणीय-यूई-बूटस्ट्रैप अज्ञात प्रदाता त्रुटि का कारण बनता है जब

<!-- This is what I added in my index.html --> 
<script src="bower_components/angular-bootstrap/ui-bootstrap-tpls.js"></script> 

// In app.js I have 
angular.module('yeomanApp', [ 
    'ngCookies', 
    'ngResource', 
    'ngSanitize', 
    'ngRoute', 
    'ui.bootstrap' 
]) 

और नियंत्रक में,

.controller('myCntrl', function ($modal) { 

$scope.items = ['item1', 'item2', 'item3']; 

$scope.showDeleteWarning = function() { 
    var modalInstance = $modal.open({ 
     templateUrl: 'deleteWarning.html', 
     controller: ModalInstanceCtrl, 
     resolve: { 
      items: function() { 
       return $scope.items; 
      } 
      } 
     }); 

    modalInstance.result.then(function (selectedItem) { 
     $scope.selected = selectedItem; 
    }, function() {}); 
    }; 

// Please note that $modalInstance represents a modal window (instance) dependency. 
// It is not the same as the $modal service used above. 

var ModalInstanceCtrl = function ($scope, $modalInstance, items) { 

    $scope.items = items; 
    $scope.selected = { 
    item: $scope.items[0] 
    }; 

    $scope.ok = function() { 
    $modalInstance.close($scope.selected.item); 
    deleteVent(); 
    }; 

    $scope.cancel = function() { 
    $modalInstance.dismiss('cancel'); 
    }; 
}; 

}; 

उत्तर

1

संभावना है कि आप अपने नियंत्रक निर्भरता इंजेक्षन करने की जरूरत है ...

https://docs.angularjs.org/tutorial/step_05#a-note-on-minfication

.controller('myCntrl', ['$modal', function ($modal) { 
    /* Controller Code Here... */ 
}]); 
+0

मैं इस कोशिश की और त्रुटि मिली: [$ इंजेक्टर: cdep] परिपत्र निर्भरता पाया: मेरे कंसोल पर। – NSCoder

0

मैं जानता हूँ कि यह एक पुराने सवाल यह है कि , लेकिन मैं अपने उत्तर यहां उन लोगों के लिए पोस्ट करूंगा जो भविष्य में इस समस्या से आते हैं।

मैं इससे पहले इस सटीक समस्या में आया था। खनन के दौरान आपकी त्रुटियों का कारण सबसे अधिक संभावना है कि आपके 'var ModalInstanceCtrl'।

var modalInstance = $modal.open({ 
    templateUrl: 'deleteWarning.html', 
    controller: 'ModalInstanceCtrl', //change this to a string 
    resolve: { 
     items: function() { 
      return $scope.items; 
     } 
     } 
    }); 

और इस लाइन:

var ModalInstanceCtrl = function ($scope, $modalInstance, items) { 

रहे हैं:

angular.module('myModule').controller('ModalInstanceCtrl', function ($scope, $modalInstance, items) { 
0

किसी को भी जो सिर्फ इस समस्या का सामना करना पड़ा के लिए, शायद इस

यहाँ कैसे मैं काम करने के लिए मेरे कोड मिल गया है मदद करेगा। हम customModalDefaults और customModalOptions उपयोग करते हैं, तो हम निम्न के शो समारोह में पूरे return $modal.open(tempModalDefaults).result; बढ़ने की बात थी:

this.show = function (customModalDefaults, customModalOptions) { 
    //Create temp objects to work with since we're in a singleton service 
    var tempModalDefaults = {}; 
    var tempModalOptions = {}; 

    //Map angular-ui modal custom defaults to modal defaults defined in service 
    angular.extend(tempModalDefaults, modalDefaults, customModalDefaults); 

    //Map modal.html $scope custom properties to defaults defined in service 
    angular.extend(tempModalOptions, modalOptions, customModalOptions); 

    return $modal.open({ 
     backdrop: customModalDefaults.backdrop, 
     keyboard: customModalDefaults.keyboard, 
     modalFade: customModalDefaults.modalFade, 
     templateUrl: customModalDefaults.templateUrl, 
     size: customModalDefaults.size, 
     controller: ['$scope', '$modalInstance', function ($scope, $modalInstance) { 
      $scope.modalOptions = tempModalOptions; 
      $scope.modalOptions.ok = function (result) { 
       $modalInstance.close(result); 
      }; 
      $scope.modalOptions.close = function (result) { 
       $modalInstance.dismiss('cancel'); 
      }; 
     } ] 
    }).result; 
}; 
0

मैं सिर्फ कई अपने आवेदन भर में इस्तेमाल क्रियार्थ द्योतक का केवल एक पर इस समस्या का सामना किया है, और यह कर दिया मेरी समस्या बाहर मॉड्यूल कॉन्फ़िगरेशन के हल ब्लॉक में explicit function annotation का उपयोग नहीं कर रहा था।

var modalInstance = $uibModal.open({ 
    templateUrl: 'preferences.html', 
    controller: 'preferencesCtrl as ctrl', // this external controller was using explicit function annotation... 
    resolve: { 
    parent: [function() { 
     return ctrl; 
    }], 
    sectorList: ['preferencesService', function(preferencesService) { // but this was not! 
     return preferencesService.getSectors(); 
    }] 
    } 
}); 

आशा इस किसी और एक भूरे बालों या दो की बचत होती है ...

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