2016-04-24 1 views
1

Je suis en train d'envoyer ce qui suit à NodeRED ..Impossible d'envoyer objet à NodeRED

this.user= { 

     medName1: '', 
     medTime1: '' 
     }, 
     { 
     medName2: '', 
     medTime2: '' 
     }, 
     { 
     medName3: '', 
     medTime3: '' 
    }; 

    this.register = function() { 
     console.log('User clicked register', this.user); 
     $scope.sock.send(this.user); 
    }; 

Le registre() est appelée après avoir cliqué sur le bouton « Soumettre ». Le problème est que chaque fois que j'essaie d'envoyer this.user à NodeRED via une connectivité websocket, j'obtiens [Object Object] montré dans NodeRED. J'ai déjà lu les réponses relatives à [object Object] mais aucune d'elles ne résout ce problème.

Comment résoudre ce problème? Votre aide sera vraiment appréciée. Que faire si vous faites this.user un tableau?

Répondre

0

this.user= [{ 

     medName1: '', 
     medTime1: '' 
     }, 
     { 
     medName2: '', 
     medTime2: '' 
     }, 
     { 
     medName3: '', 
     medTime3: '' 
     } 
    ]; 

    this.register = function() { 
     console.log('User clicked register', this.user); 
     $scope.sock.send(this.user); 
    }; 
+0

Il ne fonctionne pas. L'élément de tableau à l'index 0 est toujours converti en chaîne [object Object] –

0

changement this.user dans Array comme celui-ci

this.user= [ 
     { 
     medName: '', 
     medTime: '' 
     }, 
     { 
     medName: '', 
     medTime: '' 
     }, 
     { 
     medName: '', 
     medTime: '' 
     } 
    ]; 

this.register = function() { 
    console.log('User clicked register', this.user); 
    $scope.sock.send(this.user); 
}; 

Vous pouvez obtain le premier utilisateur par this.user[0].

Ensuite, vous pouvez obtenir le medName du premier utilisateur par this.user[0].medName, ce qui devrait être un string.

Si vous souhaitez convertir this.user en string, essayez le Array toString Method.

var userString = this.user.toString(); 

Ou vous pouvez convertir en this.userjson

JSON.stringify(this.user) 
+0

Cela ne fonctionne pas. L'élément de tableau à l'index 0 est toujours converti en chaîne [object Object] –

+0

Oui, vous pouvez obtenir le medName du 1er utilisateur par this.user [0] .medName, et ce sera une chaîne –

+0

Oui, this.user [ 0] .medName peut être fait, mais je veux envoyer le contenu du tableau entier à NodeRED. La méthode join() convertit également le tableau sous la forme [object Object], [object Object], [object Object]. –