2016-10-17 1 views
0

J'ai un code d'usine où j'ai besoin de return methods pour l'utilisation dans le modèle et également return _this pour l'utilisation d'obtenir des informations du contrôleur à envoyer par l'usine. Le problème est que je ne sais pas comment mettre les deux en même temps que le return prend le premier return. Comment puis-je ajouter les deux? code:Utiliser la déclaration de retour deux fois en usine

.factory('chatroomService', function($websocket,$rootScope,$state) { 
    var dataStream = $websocket('ws://localhost:9000'); 
    _this = this; 
    var collection = ["Ola"]; 
    dataStream.onOpen(function() { 
     _this.sendChat = function(data) { 
     dataStream.send(data); 
     }; 
    }); 
    var methods = { 
    collection : collection, 
    get: function() { 
     dataStream.send(JSON.stringify({action: 'get'})); 
    } 
    }; 
    return methods; //problem here 
}) 

Répondre

0

Vous pouvez retourner un objet à la fois

return {methods: methods, context: _this} 

Et pour l'utiliser, vous appelez chatroomService.methods ou chatroomService.context

+0

ne fonctionne pas pour les deux – Olli

+0

@Olli Ce qui ne fonctionne pas à ce sujet ? Dans le journal de votre console de contrôleur chatroomService. Qu'est-ce que ça montre? – Kolby

+0

Ni ces méthodes ni ne fonctionnent lorsque je l'utilise. – Olli