Imansible trovare una versione adatta per l’installazione angular – bower

Ho impostato la mia app Angular in modo che quando viene trasferito su Heroku venga eseguita l’ bower install . Tuttavia sto ricevendo errori a causa di problemi di versione.

Quando bower install localmente, mi viene presentato questo:

 Unable to find a suitable version for angular, please choose one: 1) angular#1.2.16 which resolved to 1.2.16 and is required by angular-resource#1.2.16 2) angular#1.2.23 which resolved to 1.2.23 and is required by angular-cookies#1.2.23 3) angular#>= 1.0.8 which resolved to 1.2.25 and is required by angular-ui-router#0.2.10 4) angular#^1 which resolved to 1.2.25 and is required by angular-ui-codemirror#0.1.6 5) angular#~1.2.2 which resolved to 1.2.25 and is required by splitter#f5c2195050 6) angular#>=1.0.6 which resolved to 1.2.25 and is required by angular-elastic#2.4.0 7) angular#~1.2 which resolved to 1.2.25 and is required by angular-nanoscroller#0.2.1 8) angular#~1.2.9 which resolved to 1.2.25 and is required by angular-sockjs#0.0.1Prefix the choice with ! to persist it to bower.json ? Answer:: 

Cosa devo fare con questo – In realtà ho bisogno della versione 1.3 di Angular a causa della funzione di rimbalzo

Il mio bower.json assomiglia a questo:

 { "name": "myapp", "version": "0.0.1", "dependencies": { "json3": "~3.3.1", "es5-shim": "~3.1.0", "angular-resource": "1.2.16", "angular-sanitize": "1.2.16", "angular-animate": "1.2.16", "angular-ui-router": "~0.2.10", "jquery": "~2.1.1", "angular-ui-codemirror": "~0.1.6", "splitter": "*", "angular-cookies": "~1.2.23", "angular-elastic": "~2.4.0", "angular-local-storage": "~0.0.7", "chance": "~0.5.6", "nanoscroller": "~0.8.4", "angular-nanoscroller": "~0.2.1", "angular-sockjs": "~0.0.1" } } 

Aggiorna le tue attuali dipendenze angolari a 1.3.xe aggiungi una risoluzione per angular per sopprimere il prompt:

 { "name": "myapp", "version": "0.0.1", "dependencies": { "angular": "~1.3.x", "angular-animate": "~1.3.x", "angular-cookies": "~1.3.x", "angular-resource": "~1.3.x", "angular-sanitize": "~1.3.x", "angular-ui-router": "~0.2.10", "angular-ui-codemirror": "~0.1.6", "angular-elastic": "~2.4.0", "angular-local-storage": "~0.0.7", "angular-nanoscroller": "~0.2.1", "angular-sockjs": ">=0.0.1", "json3": "~3.3.1", "es5-shim": "~3.1.0", "jquery": "~2.1.1", "splitter": "*", "chance": "~0.5.6", "nanoscroller": "~0.8.4" }, "resolutions": { "angular": "~1.3.x" } } 

Una buona spiegazione e risoluzione del problema si possono trovare qui:

Bower-risoluzioni

Basta copiare incollando alcune linee qui per riferimento:

Quando specifichi le dipendenze per la tua app tramite Bower, alcuni pacchetti potrebbero fare affidamento su diverse versioni della stessa libreria. Dovrai risolvere la versione delle librerie che la tua app vuole realmente. In altre parole, rompi il legame. Ma non vuoi romperlo ogni volta, quindi salva la tua scelta.

Quando si esegue bower install, il processo di risoluzione è interattivo. Quando bower riconosce che ci sono due pacchetti che dipendono da un pacchetto in versioni diverse, elencherà tutte quelle versioni e chiederà:

inserisci la descrizione dell'immagine qui

La riga successiva nel prompt è molto utile. Si legge:

inserisci la descrizione dell'immagine qui

Eccezionale! Quindi, se digito! 2, invece, la mia scelta viene salvata in bower.json. In particolare, aggiungerà una voce di risoluzione:

inserisci la descrizione dell'immagine qui

Ora, la prossima volta che eseguirai l’installazione di bower, non ci sarà alcuna domanda intertriggers sulla versione che voglio perché ho già risolto che ember per la mia app dovrebbe essere la versione 1.5.1.

Dovresti aggiornare Bower (funziona per me):

 bower update 

Elimina la directory / bower_components ed esegui di nuovo bower install ..

Un hack ma funziona comunque .. !!

È ansible eseguire il comando install e quando viene richiesto di selezionare la versione, utilizzare il segno esclamativo (!) Come prefisso all’opzione. Ad esempio! 3 per la terza opzione. Questo verrà quindi aggiunto al file bower.json dell’applicazione e risolvere il conflitto.

Spero che questo ti aiuti.