Як видалити / оновити Angular CLI?


99

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

ng n app

Я отримую цю помилку:

fs.js: 640 повертає прив'язку.open (pathModule._makeLong (шлях), stringToFlags (прапори), режим); ^ TypeError: шлях повинен бути рядком або буфером у TypeError (рідний)

Як я можу оновити або видалити Angular CLI ?


6
Використанняnpm uninstall -g angular-cli
ranakrunal9

8
Тепер використовуйте npm uninstall -g @angular/cli ( stackoverflow.com/questions/43070441/… )
Jeremy Moritz

Відповіді:


278

Використання наступних команд для видалення:

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 CLI перейшов до @ angular / cli: [sudo] npm install -g @ angular / cli
Осмунд Френсіс

5
npm cache clean замінено npm cache verfy, так здається
Arnd Brugman

2
npm ERR! Починаючи з npm @ 5, кеш npm самовиліковується від проблем із корупцією, а дані, витягнуті з кешу, гарантовано дійсні. Якщо ви хочете переконатися, що все узгоджується, використовуйте замість цього "npm cache verify".
NoamG

як видалити останню версію angular cli та встановити angular cli 1.6.1
Ayyappa amara

3
Версія @NaomG npm> 5 не потребує очищення кеш-пам’яті .. але все ж, якщо вам це потрібно, запустітьnpm cache clean --force
Ashish Yadav,

27

Жодне з перерахованих вище рішень одне для мене не працювало. У Windows 7 це працювало:

Встановіть редактор швидкого середовища та видаліть усі записи для вузла,npm, angular-cli or @angular/cli

Видаліть node.js та переінсталюйте. Знову запустіть редактор швидкого середовища та переконайтеся, що 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, тому що «команда не знайдена» магічно з’являлася у мене кілька разів після того, як ng працював нормально, і я думав, що проблема вирішена.



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 . BTW вище - це спосіб видалення angular.
AT

додати '--force' до кінця без одинарних лапок.
Дейл,

4

Кутовий кліп перемістився до @angular/cli, так як з github readme,

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

Тепер, щоб встановити Latset-версію Angular, просто запустіть:

npm install -g @angular/cli@latest

Для отримання детальної інформації про Angular CLI, погляньте на Angular Introduction та CLI guide


1
Усі три відповіді містять одне і те ж посилання. Якщо ви якимсь чином пов’язані, вам потрібно додати розкриття інформації. І навіть якщо ви це зробите, пам’ятайте, що надмірна самореклама також може вважатися спамом. Подивіться, як не бути спамером
Зоя

2

Я спробував усі перераховані вище речі, і досі не зважаючи на те, що тримається в усьому світі. Тож у PowerShell я побіг Get-Command ng, і тоді стало зрозуміло, в чому моя проблема. У минулому я активно використовував пряжу, і всі старі кутові пакети cli також були встановлені глобально в кеш-пам'яті пряжі. Я видалив свій кеш пряжі на добру міру, але, мабуть, міг просто оновити глобальний кутовий кліп через пряжу. У будь-якому випадку, я сподіваюся, це допоможе нагадати деяким із вас, що якщо ви використовуєте пряжу, тоді глобальні команди, такі як ng, можуть також жити іншим шляхом, ніж те, куди їх ставить npm.


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
  • Переконайтесь, що ці команди:
ng version
npm -v
node -v
npm install -g @angular/cli
  • Нарешті, перевірте свою глобальну версію Angular CLI:
ng version

1

Добре нарікаючи багато відповідей вище, навіть у мене виникла проблема, коли мені не вдалося створити нову програму з кутовим кліпом 9.1.0 на Mac OS 10.15.3. Мою проблему було вирішено шляхом видалення кутового cli, очищення кешу та повторної інсталяції кутового 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



-2

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

// Version.assertPostWebpackVersion();

Поки він не зафіксований належним чином.


1
використання npm uninstall -g angular-clI - кращий варіант.
Правен Рана,
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.