formularios app angularjs heroku bower

angularjs - app - No se puede encontrar una versión adecuada para angular-bower install



formularios en angular 5 (5)

Configuré mi aplicación angular para que cuando se la envíe a Heroku ejecute bower install . Sin embargo, recibo errores debido a problemas de versión.

Cuando ejecuto bower install localmente, me presentan esto:

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::

¿Qué debo hacer con esto? De hecho, necesito la versión 1.3 de Angular debido a la función antirrebote

Mi bower.json ve así:

{ "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" } }


Actualice sus dependencias angulares actuales a 1.3.x y agregue una resolución para angular para suprimir el mensaje:

{ "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" } }


Borre su directorio / bower_components y ejecute bower bower install nuevo.

Un truco pero funciona sin embargo .. !!


Debes actualizar bower (Funciona para mí):

bower update


Puede ejecutar el comando de instalación y cuando solicite la selección de la versión, utilice el signo de exclamación (!) Como prefijo a opción. Por ejemplo! 3 para la tercera opción. Esto luego se agregará al archivo bower.json de su aplicación y resolverá el conflicto.

Espero que esto ayude.


Una muy buena explicación y resolución del problema se puede encontrar aquí:

bower-resolutions

Solo copie pegar algunas líneas aquí para referencia:

Cuando especifica dependencias para su aplicación a través de Bower, algunos de los paquetes pueden depender de diferentes versiones de la misma biblioteca. Deberá resolver qué versión de bibliotecas realmente quiere su aplicación. En otras palabras, rompes el empate. Pero no quiere romperlo cada vez, así que guarde su elección.

Cuando ejecuta bower install, el proceso de resolución es interactivo. Cuando Bower reconoce que hay dos paquetes que dependen de un paquete en diferentes versiones, enumerará todas esas versiones y preguntará:

La siguiente línea en el aviso es muy útil. Se lee:

¡Increíble! Entonces, si escribo! 2, mi elección se guardará en bower.json. Específicamente, agregará una entrada de resoluciones:

Ahora, la próxima vez que ejecute bower install, no hay una pregunta interactiva sobre qué versión quiero porque ya he resuelto que la fuente para mi aplicación debe ser la versión 1.5.1.