2015-02-10 11 views
14

Sto utilizzando input ng-tag e i dati che ottengo dopo aver popolato una riga sono una matrice di oggetti, ognuno con un campo di stringa "testo" come taleng-tags-input, memorizzazione dei dati dei tag come array di stringhe

[{"text":"egon"},{"text":"peter"},{"text":"raymond"},{"text":"winston"}]

c'è un modo per memorizzare i dati in un array di stringhe, invece? come

["egon", "peter", "raymond", "winston"] 
+0

Ciao. Hai risolto questo? – twDuke

+0

No, ma l'ho superato creando una matrice vuota, poi ho ripetuto l'array di tag e popolato la matrice vuota con i valori stringa dei campi di testo. – svarog

+0

Sì, che dovrò fare. – twDuke

risposta

16

ngTagsInput funziona solo con matrici di oggetti. Si può facilmente estrarre un array di stringhe da un array di oggetti, però:

$scope.tagsString = $scope.tags.map(function(tag) { return tag.text; }); 

Aggiornamento

C'è voluto del tempo, ma ngTagsInput offre ora basic support for array of strings. A partire dal v3.2.0, il seguente è possibile:

<tags-input ng-model="tags" use-strings="true"></tags-input> 

Plunker

Meglio tardi che mai, immagino.

+0

legare la direttiva a una struttura di modello specifica (anche se si fornisce 'options.displayProperty') non sembra corretta. Questo quindi incombe allo sviluppatore di impostare questa logica di mappatura ovunque possa salvare una risorsa OPPURE richiederebbe una sorta di configurazione usando la soluzione getterSetter 'ng-model-options' ... ancora non molto divertente :( Se Dovrei fornire una patch per questo, saresti aperto all'idea? – jusopi

+0

@jusopi ngTagsInput utilizzato per lavorare con gli array di stringhe solo (di nuovo in v0.1 credo) .E poi le persone hanno detto più o meno quello che stai dicendo Ora, in v1.0 ho cambiato il codice per lavorare con gli array di oggetti, che è una struttura più generica, e poi di nuovo la gente dice di volere matrici di stringhe. Vedete, è difficile accontentare tutti. :) Detto questo , Sono sempre aperto a idee che migliorano il progetto. Se sei disposto a inviare un PR, per favore fallo. Lo esaminerò felicemente. Potresti voler inviare prima un problema su GitHub in modo che possiamo discutere su come questo potrebbe essere implementato. –

+0

Capisco perfettamente da dove vieni. Non posso accontentare tutti Presenterò una proposta su Github in base al tuo suggerimento, in quanto ho alcune domande. Grazie per la tua pronta risposta @Michael – jusopi

Problemi correlati