2013-08-29 15 views
7

Angularjs uygulamamı gizlemeye çalışıyorum ve kırılıyor. Bunun çerçeve ile ilgili bir sorun olduğunun farkındayım ve bunu $ inject yöntemi ile çözmeye çalıştıklarını biliyorum.AngularJS Obfuscation

http://docs.angularjs.org/tutorial/step_05 "Minification Not" bölümüne bakın.

AventosController.$inject = ['$scope','$http','$q','controllerComm']; 
VforumController.$inject = ['$scope','$http','$timeout','controllerComm']; 

Eh, hala çalışmıyorsa:

onlar devam ettim ve şöyle benim uygulamaya uyacak şekilde yaptım YourController.$inject = ['$scope', '$http'];

yapıyor tavsiye Bu sorunu çözmek için. Ben konsolda almak hatadır:

Neyse

Error: Unknown provider: cProvider <- c <- controllerComm

bu durumu düzeltmek için? gizleme

$scope.launchVforum = function() 
{ 
    $scope.installationVideo = ($scope.installationVideo) ? false : true; 
    controllerComm.prepBroadcast($scope.installationVideo); 
} 

cevap

7

sonra çalışmayan

DÜZENLEME

controllerComm

app.factory('controllerComm', ['$rootScope', function($rootScope) 
{ 
    var showVforum = {}; 
    showVforum.result = false; 
    showVforum.prepBroadcast = function(val) 
    { 
    this.result = val; 
    this.broadcastVal(); 
    } 

    showVforum.broadcastVal = function() 
    { 
    $rootScope.$broadcast('toggleVforum') 
    } 
    return showVforum; 
}]); 

DÜZENLEME 2 kontrol tanımına enjekte deneyin.

app.controller('myCtrlr', ['$scope', '$http', '$q', 'controllerComm', function ($scope, $http, $q, controllerComm) { 
    ... 
}]); // end myCtrlr 

Ayrıca "controllerComm" tanımlı mı?

+0

Yani şöyle bir denetleyici tanımlamak yerine: 'işlev AventosController (..) {..}' app.controller ('AventosController', [...] 'ile tanımlamalıyım? Şu anda – Ronnie

+0

ve evet controllerComm tanımlanmıştır.Onu – Ronnie

+0

Ahh ile güncellemeyi yapacağım, anladım. Ne dediğinizi yaptım, denetleyicileri bu formatta kurdum ama yine de hatayı alıyordum. 'controllerComm' ve bu sabit! Teşekkürler bir ton – Ronnie