2013-05-10 1 views
6

Sto creando una libreria javascript che desidero rendere disponibile tramite Bower alla mia azienda interna. Sto usando Grunt per costruire la mia biblioteca.Definizione delle informazioni "pacchetto" in component.json e package.json

Il mio problema è che la convenzione di grugnito è quello di utilizzare package.json di definire le dipendenze, le versioni di libreria, dipendenze, ecc

Bower, d'altra parte, si presume che le stesse informazioni si trova in un file component.json.

Qual è l'uso previsto di questi due? Sembrano servire essenzialmente allo stesso scopo. Devo creare entrambi e tagliare e incollare le informazioni condivise?

risposta

5

Abbiamo ottenuto un sacco di questi tipi di domanda e tutti danno per scontato che potremmo condividere un sacco di metadati tra questi formati, ma la realtà è che solo i campi name e version sono condivisibili e soltanto i version campo cambia regolarmente. Se ritieni di dover aggiornare due campi quando rilasci qualcosa, ci sono strumenti che possono automatizzarli, ad es. grunt-bumpx.

2

package.json è destinato a scopi di back-end, in questo caso specificare attività grunt, dipendenze nodo, ecc. Nell'altro lato, bower.json è destinato a scopi front-end.

+0

Questa è anche una buona risposta - tra te e Sindre penso che sia tutta la storia. Mi dispiace Kevin! –

+0

Non preoccuparti, il mio unico scopo è di aiutare;) – kevinwolf

+1

'package.json' è ** non ** pensato solo per il back-end. npm funziona perfettamente anche con il frontend. –