Термін 'ng' не розпізнається як назва командлета


107

Сьогодні, працюючи над деяким базовим AngularJS Intro, я зіткнувся з проблемою.

Я відкрив PowerShell, щоб продовжити проект. NPM спрацював.

Я зміг встановити Angular, використовуючи:

npm install -g @angular/cli

Кожного разу, коли я намагався запустити ng, я отримував:

the term 'ng' is not recognized as the name of a cmdlet

2
зробіть це в режимі " Запуск від імені адміністратора "
Педрам Ахмадпур

Я спробував тут усе безрезультатно. Мені також довелося бігати, npm install -g @angular/cliі тоді це спрацювало.
Jnr

Чи справді ви використовуєте AngularJS? У 2017 році ви, ймовірно, використовували Angular (без JS).
LosManos

Відповіді:


125

Першим шляхом у змінній шляху повинен бути шлях NPM. Відкривши командний рядок Node.js, я виявив, що команда ng там працювала. Я заглибився в ярлик і виявив, що він посилається на команду, щоб переконатися, що першою змінною Path є NPM. Виправити:

  1. Клацнуто правою кнопкою на моєму комп'ютері (Windows)
  2. Вибрані розширені налаштування системи
  3. Клацнув "Змінні середовища"
  4. Під змінною "Шлях" внесено ПЕРШЕ значення %AppData%\npm

Після того, як я це зробив, мені вдалося закрити PowerShell і відкрити його, і все працювало.


Після виконання вищевказаних кроків "ng -v" працює, але "ng build" не працює. Це дає цю помилку: "Ви, здається, не залежате від" @ angular / core ". Це помилка."
PSR,

6
Ви також можете пропустити все це у багатьох випадках, просто ввівши "npm run ng ...." Npm, як правило, все ще працює у PowerShell без змін, і "npm run" дозволить вам використовувати команди ng.
SmoveBB

У мене це спрацювало. Я просто хочу зрозуміти, чому ми отримуємо помилку tis після встановлення nodejs, який уже на шляху.
Saroj Kumar Sahoo

Привіт, у мене це не спрацювало .. якщо хтось може допомогти мені у скайпі або масштабуванні, будь ласка ..... я намагаюся через пару днів, але не можу вирішити ... Будь ласка
Лаксмінарайян Чаран

1
@LaxminarayanCharan "якщо хтось може мені допомогти у скайпі чи масштабуванні" - це не відповідний запит на SO. Якщо у вас виникають конкретні проблеми із застосуванням інформації, яка вже доступна на цьому веб-сайті, задайте нове запитання на мінімально відтворюваному прикладі .
jonrsharpe

84

Спочатку налаштуйте Node.js, потім перейдіть до папки проекту за допомогою командного рядка, наприклад D: \ project, а потім запустіть цю команду:

npm install -g @angular/cli

Тепер запустіть команду ng. Ця робота для мене.


5
-gЧи означає глобальний характер . Якщо ви встановлюєте глобально, не має значення, чи ви перебуваєте в проекті D: \ vs D: \ під час запуску цієї команди. Одне попередження - це може бути не те, що ви хочете, якщо ви хочете використовувати різні версії angular / cli для різних проектів.
mattliu

це, безумовно, правильна відповідь, якщо angular / cli не встановлено
приблизно

20

У розділі "Змінні середовища"

У розділі "Змінні системи"

У змінній "Шлях" і перед "C:\Program Files (x86)\nodejs\"додаванням =>"%AppData%\npm"


1
Саме те, що потрібно .. Велике спасибі
Md Faraz

Працював у мене. Дякую. Мав .npmrcфайл із prefixвстановленим як шлях AppData.
Ananthapadmanabhan

12

Рішення, яке працювало для мене:

Додайте шлях до свого середовища Змінна

C:\Users\YourPcName\AppData\Roaming\npm

а також ваша папка bin кутового файлу [представити їх]

C:\Users\YoutPcName\AppData\Roaming\npm\node_modules\angular-cli\bin

а потім запустіть, ng -v він з’явиться у вашому командному рядку з кутовим графічним інтерфейсом. Примітка. Після запуску npm i -g @angular/cliперезапустіть командний рядок і перевірте, чи працює він інакше, очистіть кеш-пам’ять і повторіть описані вище дії.


Після виконання "ng install -g @ angular / cli", мені довелося б встановити AppData як змінну шляху. Дякую, тепер я можу працювати безперебійно.
Napster

Працює для мене, закриття та перезапуск VSCode
Hanz

8

Я використав наступне:

npm run ng serve

Це спрацювало для мене без необхідності встановлювати змінні середовища.

Мені довелося встановити машинопис після нього:

npm install typescript@">=3.4 <3.6"

саме те, що я хотів. це спрацювало для мене після запуску npm run ng serve
Joginder Malik

7

Встановлення кутового кліпу глобально вирішило мою проблему.

npm install -g @angular/cli

7

Мені вдалося змінити політику на Необмежений:

Set-ExecutionPolicy Unrestricted -Scope CurrentUser

Дякую ... Це я віддаю перевагу насамперед рішенням, наведеним у цьому запиті. Оскільки всі рішення мають свої наслідки
Parth Devloper

4

Якщо назва вашого проекту містить '-'. Видаліть і спробуйте. Це може спричинити проблему із запуском 'ng'.


3

Я отримував цю помилку, Visual Studio Codeколи робив ng-build. Запуск команди нижче в cmd виправив мою проблему

npm install -g @angular/cli@latest

2

Відкрийте Редагувати змінні системного середовища

У змінних "Шлях" та "Шлях модуля PS" додайте "% AppData% \ npm"

Запустіть Visual Code від імені адміністратора

Це працює для мене!


2

Вам просто потрібно закрити код Visual Studio і перезапустити знову. Але для того, щоб команда ng працювала в коді проти, вам потрібно спочатку скомпілювати проект за допомогою cmd в режимі адміністратора.

Я теж стикався з тією ж проблемою. Але цей метод вирішив це.


2

Усі відповіді стосуються того, як це виправити, але найкраще завантажити nodeJs і дозволити програмі встановлення додати змінну PATH.

Версії 12 і 13 занадто нові, тому мені довелося завантажити 11.15 https://nodejs.org/download/release/v11.15.0/


1

Замість того, щоб давати команду "ng serve" у терміналі коду Visual Studio, відкрийте кутовий шлях до програми в командному рядку (Запуск від імені адміністратора).

Потім дайте команду "ng serve".

Потім відкрийте браузер і перейдіть на http: // localhost: 4200 /

Це працює для мене.


1

Вам слід оновити node js до останньої версії. В іншому випадку видаліть node js і встановіть його знову.


1

Цей скрипт PowerShell працював, щоб додати правильне налаштування до моєї змінної середовища "Шлях" (як налаштування для кожного користувача.) Він додає:% AppData% \ npm ..., а потім перезапустіть командний рядок, що використовує "ng"

   $existingPath = [System.Environment]::GetEnvironmentVariable("Path","User")      
   write-host "existing PATH variable is $existingPath"                                          
   $newPath = "%AppData%\npm;$existingPath"                                          
   write-host "new      PATH will be     $newPath"                                               

   # update here                                                                                      
   [System.Environment]::SetEnvironmentVariable("Path", $newPath, "User")           

   $finalPath = [System.Environment]::GetEnvironmentVariable("Path","User")         
   write-host "final    PATH variable is $finalPath"                                             

Працює, як описано.
koosk

1

Я вирішив це, виконавши наведені нижче дії

1. Клацніть правою кнопкою миші на командному рядку 2. Запустіть як адміністратор 3. введіть npm install -g @ angular / cli


1
не слід встановлювати глобально пакунки npm
Тарік Веллінг,

@TarickWelling, будь ласка, надайте підтверджуючий аргумент для свого твердження.
Якоб-Ян Моссельман

Тоді чому існує -g? І як ви повинні отримати інструменти CLI без -g?
tpartee

1

1) Клацнути правою кнопкою миші на моєму комп’ютері (вікна) 2) Вибрані розширені налаштування системи 3) Клацнути «Змінні середовища» 4) Під змінною «Шлях» внести ПЕРШЕ значення, вказане% AppData% \ npm

Спочатку : C: \ Program Files \ Microsoft MPI \ Bin \;% SystemRoot% \ system32;% SystemRoot%;% SystemRoot% \ System32 \ Wbem;% SYSTEMROOT% \ System32 \ WindowsPowerShell \ v1.0 \; C: \ Program Files \ TortoiseSVN \ bin;

Після додавання шляху : C: \ Program Files \ Microsoft MPI \ Bin \; % AppData% \ npm; % SystemRoot% \ system32;% SystemRoot%;% SystemRoot% \ System32 \ Wbem;% SYSTEMROOT% \ System32 \ WindowsPowerShell \ v1.0 \; C: \ Program Files \ TortoiseSVN \ bin;

Ще одну річ ви можете спробувати, якщо помилка все ще з’являється, як показано нижче 1) перейдіть до місця проекту за допомогою командного рядка: C: \ Users \ brijeshray \ ParentChild> 2) Переінсталюйте або оновіть існуючий angular як: npm install -g @ angular / cli @latest

3) Перейдіть на комп’ютер або ПК -> Властивості -> Розширені налаштування системи -> Змінна середовища -> додайте шлях нижче «Змінна користувача» (якщо «Шлях» відсутній) ==> C: \ Users \ brijeshray \ AppData \ Roaming \ npm -> збережіть його та перезапустіть візуальний кодвведіть тут опис зображення


1

Виправлення: Запуск сценаріїв у цій системі вимкнено

Відкрийте Powershell

    Set-ExecutionPolicy RemoteSigned
    A

(A: ТАК УСІМ)

Готово!


1

Для VSCode Terminal Першого відкрийте cmdта встановіть angular-cliяк глобальний

npm install -g @angular/cli

Потім оновіть змінні середовища, виконавши цей крок

  1. win + s // це відкриє вікно пошуку
  2. Введіть Редагувати змінні середовища
  3. Змінні відкритого середовища
  4. Додайте %AppData%\npmвсерединуPATH
  5. Клацніть OKі закрийте.

Тепер ви можете перезапустити свій, VSCodeі він буде працювати як зазвичай.


0

Я використовував npm (5.5.1), оновлюючи його до останньої версії, вирішив мою проблему.


0

Ви також можете переконатися, що запустили командний рядок - або будь-який термінал, який ви використовуєте - як адміністратор. Я використовую Visual Studio Code, і ng serveкоманда видає мені саме цю помилку, коли не запускаю VS Code як адміністратор.


0

Запустіть Powershell або командний рядок не як адміністратор.


0

Після зміни шляху вам доведеться перезапустити PowerShell. Перезавантажувати комп’ютер не потрібно.


0

Проблема НЕ в установці NPM, ані в шляху! Якщо ви хочете скористатися командою "ng", вам потрібно встановити angular-cli. виконавши наступну команду

npm install -g @angular/cli

https://cli.angular.io/


0

На основі наведених відповідей тут проводиться консолідація.

  1. Виконайте команду npm install -g @angular/cli@project_version
  2. Додайте наведені нижче шляхи до змінних середовища -> Системні змінні -> Шлях (для якого потрібен доступ адміністратора) .

    C: \ Users \ YourPcAccountName \ AppData \ Roaming \ npm C: \ Users \ YoutPcAccountName \ AppData \ Roaming \ npm \ node_modules \ angular-cli \ bin Переконайтесь, що перше значення вказано як %AppData%\npm

  3. Повторно відкрийте командний рядок із папки проекту та запустіть ng serve.

0

Я запустив команду 'ng serve' у командному рядку. Він успішно склав проект. Тоді будь-які зміни, збережені у VS Code, автоматично оновлюються у браузері.

PS: Я встановив кутовий глобально.


0

Також ви можете запустити наступну команду для вирішення, npm install -g @ angular / cli


0

Також переконайтесь, що папка node_modules також існує там, в каталозі проекту. Якщо його немає, ви отримаєте подібну проблему. тому, будь ласка, запустіть також npm install.


0

Навіть незважаючи на правильні відповіді. Але все це не працювало для мене, оскільки:

  • Моє ім’я користувача не мало прав адміністратора, і я не міг оновити змінну середовища, як пропонується у відповідях.

Отже, для всіх вас, хто стикається з тією ж проблемою, що і я, ось що я зробив:

Замість ng serve

Я скопіював повний шлях до місця розташування, ngяк показано нижче, і він працював. Тож ng serveкоманда стала:

C:\Users\MyUserName\AppData\Roaming\npm\ng.cmd serve


0

Вибрані розширені налаштування системи введіть тут опис зображення Натиснувши "Змінні середовища" введіть тут опис зображення Під змінною "Шлях" зробив ПЕРШЕ значення, вказане % AppData% \ npm, введіть тут опис зображення. Я зробив це. Закрийте PowerShell і знову відкрийте. всі працювали

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