Невозможно найти подходящую версию для angular - установка bower - программирование
Подтвердить что ты не робот

Невозможно найти подходящую версию для angular - установка bower

Я установил приложение Angular, поэтому, когда он нажал на Heroku, он запускает bower install. Однако я получаю ошибки из-за проблем с версиями.

Когда я запускаю bower install локально, мне представляется следующее:

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

Что мне делать с этим - мне действительно нужна версия 1.3 из Angular из-за функции debounce

Мой bower.json выглядит следующим образом:

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

Ответ 1

Обновите текущие зависимости angular до 1.3.x и добавьте разрешение для angular, чтобы подавить приглашение:

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

Ответ 2

Очень хорошее объяснение и разрешение проблемы можно найти здесь:

bower-resolutions

Просто скопируйте несколько строк здесь для справки:

Когда вы указываете зависимости для вашего приложения через Bower, некоторые из пакетов могут полагаться на разные версии одной и той же библиотеки. Вам нужно будет решить, какую версию библиотек вам действительно нужно. Другими словами, вы нарушаете галстук. Но вы не хотите каждый раз ломать его, поэтому сохраните свой выбор.

Когда вы запускаете установку bower, процесс разрешения является интерактивным. Когда bower признает, что есть два пакета, которые зависят от пакета в разных версиях, он перечислит все эти версии и спросит:

введите описание изображения здесь

Следующая строка в подсказке очень удобна. Он гласит:

введите описание изображения здесь

Awesome! Итак, если я набираю! 2 вместо этого, мой выбор сохраняется в bower.json. В частности, он добавит запись разрешения:

введите описание изображения здесь

Теперь, в следующий раз, когда вы запустите установку bower, нет интерактивного вопроса о том, какую версию я хочу, потому что Ive уже решил, что для ember для моего приложения должна быть версия 1.5.1.

Ответ 3

Вы должны обновить bower (он работает для меня):

bower update

Ответ 4

Удалите каталог /bower_components и снова запустите bower install.

Взлом, но работает все же..!!

Ответ 5

Вы можете запустить команду установки, и когда она предложит выбрать версию, используйте (!) восклицательный знак в качестве префикса для опции. Например, 3 для третьего варианта. Затем он будет добавлен в файл bower.json вашего приложения и разрешит конфликт.

Надеюсь, что это поможет.