2014-05-15 8 views
14

Sto usando Q in un progetto e sto usando bower per gestire le mie dipendenze JS. Sono compresi Q 2.0.0 con pergolato in bower.jsonQ 2.0.0 installato con Bower causa Uncaught ReferenceError: require non definito

"dependencies" : { 
    "q": "~2.0.0" 
} 

Nel mio index.html, includo Q con un tag script

<script src="bower_components/q/q.js"></script> 

Quando carico della pagina, vedo nel console:

Uncaught ReferenceError: require is not defined q.js:43

linea 43 di q.js:

require("collections/shim"); 

Cosa mi manca qui? Dovrei usare Browserify o require.js per farlo funzionare? Mi aspettavo che la biblioteca fosse accessibile semplicemente usando un tag.

risposta

33

Bower non è molto intelligente sulla selezione delle versioni. Come succede, c'è un treno di rilascio 2.0 che non è affatto compatibile con Bower. Dovresti installare q # 1.0.1 in particolare.

+0

Grazie, sarebbe meglio prendere q da github e includerlo in questo modo, in modo da poter usare 2.0? – binarygiant

+4

Non è consigliabile utilizzare il treno di rilascio v2 in questo momento, specialmente su Bower. Non si è sufficientemente consolidato per l'uso generale. –

+0

Ho raggiunto lo stesso problema. All'inizio pensavo che q avesse una forte dipendenza da requriejs (che era sconcertante) e andò avanti richiedendo il mio progetto solo per scoprirlo. #latenightcoding –

Problemi correlati