2016-04-29 5 views
0

definiert verwenden, habe ich eine Funktion ‚Funktioneine‘ in Dienst namens ServiceA vielleicht genannt:Wie eine Funktion im Dienst in einem anderen Controller in AngularJS Unit-Test

return Restangular 
    .extendModel('modelA', function(model) { 
      model.functionA = function(body) { 
       return this.customPUT(body, 'add') 
      }; 
      return model; 
    }) 
    .service('accounts'); 

Und ich kann es in ControllerB verwenden, es funktioniert gut .

function functionB(body){ 
    instanceModelB.instanceModelA.functionA(body) 
      .then(onSuccess) 
      .catch(onFail) 
      .finally(onFinally); 
} 

Aber wie man es im Komponententest für ControllerB benutzt? Ich meine, wie man FunktionA im Komponententest für ControllerB aufruft? Es sagt immer 'FunktionA ist keine Funktion'. Vielen Dank im Voraus.

Antwort

0

Für mich klingt es wie Sie serviceA.functionA() ist nicht global zugänglich.

Sie müssen nur Ihren ServiceA exportieren, und dann sollten Sie global darauf zugreifen können.

Verwandte Themen