Как удалить / обновить Angular CLI?

102

Когда я пытаюсь создать новый проект с Angular CLI , с:

ng n app

Я получаю такую ​​ошибку:

fs.js: 640 return binding.open (pathModule._makeLong (путь), stringToFlags (флаги), режим); ^ TypeError: путь должен быть строкой или буфером в TypeError (собственный)

Как я могу обновить или удалить Angular CLI ?

РоханАрихант
источник
6
Usenpm uninstall -g angular-cli
ranakrunal9
8
Теперь используйте npm uninstall -g @angular/cli ( stackoverflow.com/questions/43070441/… )
Джереми Мориц

Ответы:

283

Используйте следующие команды для удаления:

npm uninstall -g @angular/cli
npm cache clean --force

Для проверки: ng --version / * Вы получите сообщение об ошибке, затем вы удалили * /

Используя следующие команды для переустановки:

npm install -g @angular/cli

Примечания: - Использование --force для очистки всех кешей - В Windows запустите это с помощью администратора - На Mac используйте sudo ( $ sudo <command>)

  • Если вы используете, npm>5вам может потребоваться использовать проверку кеша. ( $ npm cache verify)
Сантош Пиллаи
источник
11
Обратите внимание, что интерфейс командной строки Angular переместился в @ angular / cli: [sudo] npm install -g @ angular / cli
Osmund Francis
5
npm cache clean заменяется npm cache verfy, так что кажется
Арнд Бругман
2
npm ERR! Начиная с npm @ 5, кеш npm самовосстанавливается от проблем с повреждением, и данные, извлеченные из кеша, гарантированно являются действительными. Если вы хотите убедиться, что все согласовано, используйте вместо этого npm cache verify.
NoamG
как удалить последнюю версию angular cli и установить angular cli 1.6.1
Ayyappa amara
3
@NaomG npm version> 5 не требует очистки кеша .. но все же, если вам это нужно, запуститеnpm cache clean --force
Ашиш Ядав
27

Ни одно из вышеперечисленных решений само по себе не помогло мне. В Windows 7 это сработало:

Установите Rapid Environment Editor и удалите все записи для узла,npm, angular-cli or @angular/cli

Удалите node.js и переустановите. Снова запустите Rapid Environment Editor и убедитесь, что node.js и npm находятся в вашем системном или пользовательском пути. Удалите все существующие версии ng с помощью:

npm uninstall -g angular-cli

npm uninstall -g @angular/cli

npm cache clean

Удалите C:\Users\YOU\AppData\Roaming\npm\node_modules\@angularпапку.

Перезагрузитесь, затем, наконец, запустите:

npm install -g @angular/cli

Затем задержите дыхание и запустите ng -v. Если вам повезет, вы получите немного любви. Впредь задерживайте дыхание каждый раз, когда вы запускаете команду ng, потому что «команда не найдена» волшебным образом появлялась у меня несколько раз после того, как ng работал нормально, и я думал, что проблема решена.

ВанАльберт
источник
еще проще: stackoverflow.com/questions/43070441/…
Джереми Мориц
15

Выполните следующие команды, чтобы получить самую последнюю версию angular

npm uninstall -g @angular/cli
npm cache verify
npm install -g @angular/cli@latest
npm install
Стэнли Мохлала
источник
6

удалить глобальную ссылку

npm uninstall -g angular-cli
npm cache clean
В
источник
но ошибка такая же. У кого-нибудь есть решение для этого fs.js: 640 return binding.open (pathModule._makeLong (path), stringToFlags (flags), mode); ^ TypeError: путь должен быть строкой или буфером в TypeError (собственный) в Object.fs.openSync (fs.js: 640: 18) в Object.fs.readFileSync (fs.js: 508: 33)
RohanArihant,
Это очень общая ошибка, это может быть что угодно, отсутствие зависимости или неправильная конфигурация. Лучше спросить об этом на github.com/angular/angular.js/issues . Кстати, выше - это способ удалить angular.
AT
добавьте '--force' в конец без одинарных кавычек.
Dale
4

Angular cli переехал @angular/cli, так как из readme на github,

sudo npm uninstall -g @angular/cli
npm cache clean
Все вайти
источник
4

Я недавно столкнулся с этим на Mac, мне пришлось удалить папку ng из /usr/local/bin. Было так давно, что я установил Angular CLI, я не совсем уверен, как я его установил изначально.

жасок
источник
2

Чтобы удалить его глобально, просто выполните команду ниже:

npm uninstall -g @angular/cli

Как только это будет сделано, очистите кеш, выполнив следующую команду:

npm cache clean

Теперь, чтобы установить версию Angular для latset, просто запустите:

npm install -g @angular/cli@latest

Подробнее об Angular CLI см. Введение в Angular и руководство по CLI.

Уттам Кумар Мишра
источник
1
Во всех ваших трех ответах упоминается одна и та же ссылка. Если вы каким-либо образом связаны, вам нужно добавить раскрытие. И даже если вы это сделаете, помните, что чрезмерная самореклама также может считаться спамом. Узнайте, как не быть спамером
Зои
2

Я пробовал все вышеперечисленное, но до сих пор остаюсь в мире. Итак, в PowerShell я запустил Get-Command ng, и тогда стало ясно, в чем моя проблема. Раньше я активно использовал yarn, и все старые пакеты angular cli также были установлены глобально в расположение кэша yarn. Я удалил свой кеш пряжи для хорошей меры, но, вероятно, мог бы просто обновить глобальный angular cli с помощью пряжи. В любом случае, я надеюсь, что это поможет напомнить некоторым из вас, что если вы используете yarn, то глобальные команды, такие как ng, также могут жить по другому пути, чем npm.

Rafe
источник
2

Обычное решение, которое не всегда работает:

npm uninstall -g @angular/cli
npm cache verify
npm install -g @angular/cli

Другое более радикальное решение:

  • Удалить Angular CLIглобально
npm uninstall -g @angular/cli
  • Удаление Node.jsи npmс деинсталлятором
  • Удалите все переменные среды, связанные с Node.js&npm
  • Удалить папки C:\Users\<user>\AppData\Roaming\npmиC:\Users\<user>\AppData\Roaming\npm-cache
  • Убедитесь, что эти команды являются ko:
ng version
npm -v
node -v
npm install -g @angular/cli
  • Наконец, проверьте свою глобальную версию Angular CLI:
ng version
Вебен
источник
1

Хорошо, что соответствует многим вышеупомянутым ответам, даже у меня была проблема, когда я не мог создать новое приложение с angular cli 9.1.0 в Mac OS 10.15.3. Моя проблема была решена путем удаления angular cli, очистки кеша и повторной установки angular cli.

npm uninstall -g @angular/cli

Проверьте статус установки с помощью ng --version

npm cache verify
npm install -g @angular/cli

Попробуйте создать новое приложение прямо ng new my-appсейчас, чтобы узнать, помогает ли это.

Гурурадж Бираждар
источник
0

используйте следующую команду, если вы установили глобально,

 npm uninstall -g angular-cli
Аджит КП
источник
0

Не ответ на ваш вопрос, а ответ на проблему, которую вы упомянули:

Похоже, у вас неправильный файл конфигурации для версии angular-cli, которую вы используете.

В файле angular-cli.json попробуйте изменить следующее:

из:

  "environmentSource": "environments/environment.ts",
  "environments": {
    "dev": "environments/environment.ts",
    "prod": "environments/environment.prod.ts"
  }

кому:

  "environments": {
    "source": "environments/environment.ts",
    "dev": "environments/environment.ts",
    "prod": "environments/environment.prod.ts"
  }
Гал Тамир
источник
0

Я всегда использую следующие команды перед обновлением до последней версии. Если это префикс Ubuntu: 'sudo'

npm uninstall -g angular-cli
npm cache clean
npm install -g angular-cli@latest
Яшвант Чоудари Ката
источник
0
 $ npm uninstall -g angular-cli 
 $ npm cache clean 
 $ npm install -g angular-cli
Lekens
источник
0

Запустите эту команду

npm uninstall angular-cli
Джулиан Бичи
источник
-2

Простейшее обходной путь для продолжения работы в проекте является комментарием строка 25 из node_modules / углового кли / бен / нг :

// Version.assertPostWebpackVersion();

Пока не зафиксируется как следует.

Вадим
источник
1
использование npm uninstall -g angular-clI - лучший вариант.
Правин Рана