AngularJS ve bağımlılık enjeksiyonu ile çalışan birçok kişi için benzer bir sorun var gibi görünüyor: benim AngularJS uygulaması bir Bilinmeyen verir Sağlayıcı: $ scopeProvider < - Bir denetleyiciye hizmet enjekte çalıştığımda $ scope hatası. Yine de, her yerde bulabildiğim yaygın hata (ve çözüm), hizmet işlevine $ kapsam veya $ rootScope eklememesi gerektiğidir. Ben yapmadım. Bulduğum diğer bir konu da, tüm bağımlılıkları dizeler olarak iletmeniz gerektiğidir, çünkü onlar AngularJS tarafından küçültme nedeniyle tanınmadılar (şimdi benim dev ops'larımda var). Ben de yaptım. Yani şimdi soru ... mantığım/yapmamın nesi yanlış ve bunu nasıl çözebilirim?
angular.module('MyApp', ['ngMaterial']);
angular
.module('MyApp')
.factory('Utils', function(){
\t \t return {
\t \t \t normalCase: function(str){
\t \t \t result = '';
\t \t \t str.split(' ').forEach(function(string, i){
\t \t \t \t result += string[0].toUpperCase() + string.slice(1).toLowerCase();
\t \t \t \t if(i<str.split(' ').length) result += ' ';
\t \t \t });
\t \t \t return result;
\t \t \t }
\t \t })
\t .controller('AppController', ['$scope', '$mdDialog', 'Employee', 'Utils', '$http',
\t \t \t function($scope, Employee, Utils, $http, $mdDialog){
\t \t \t $scope.employee.firstName = Utils.NormalCase(employee.firstName);
\t \t }])
index.html dosyasına eklenen dosyaların sırasıdır:
<script src="js/app.js"></script>
<script src="js/models/Employee.js"></script>
<script src="js/models/Utils.js"></script>
<script src="js/controllers/AppController.js"></script>
<script src="js/controllers/EmployeeListController.js"></script>
<script src="js/controllers/ScorecardController.js"></script>
İşte benim app temel yapısı var
Şimdiden teşekkürler!
[Bağımlılık Doktorları] https://docs.angularjs.org/guide/di –