angular-ui select2 tagging met à jour la valeur des données

C’est donc mon entrée select2

 

où dans tagOptions est

 { data: [{"id":301,"text":"tag2"},{"id":302,"text":"tag2"},{"id":303,"text":"tag3"},{"id":304,"text":"tag4"}], multiple: true, createSearchChoice: function(term) { var timestamp = new Date().getTime(); return {id: timestamp, text: term, new: true}; } } 

et ProjectTagpr est

 [301, 304]; 

qui rend select2 avec les balises tag1, tag4 et transforme ProjectTagpr en

 [{"id":301,"text":"tag2"},{"id":304,"text":"tag4"}] 

Maintenant, la première question Puis-je faire en sorte qu’il conserve la structure ProjectTagpr origine (juste un tableau d’identifiants, au lieu d’object avec à la fois id et text)?

Et la deuxième question Si j’ajoute une nouvelle balise, par exemple newtag5 , cela élargirait ProjectTagpr avec quelque chose comme {id: 1554894854, text: 'newtag5', new: true} , maintenant, lorsque j’appuie sur save et j’aime bien $ http pour mettre à jour les data origine sur le select2, de sorte qu’il ajoute le newtag5 à cet emplacement (bien sûr, renvoyé avec l’id de la firebase database et sans ce new: true ), comment procéderais-je?

J’ai essayé de faire $scope.tagOptions.data = dataReturnedFromHttp; mais cela évidemment (ou pas) n’a pas fonctionné ..

C’est en fait assez simple

 data: function() { return {'results': $scope.data}; } 

alors c’est à peu près lié en direct.

C’est juste que c’est en quelque sorte non documenté, que vous pouvez transmettre des données à une fonction.