Подтвердить что ты не робот

Глобальная версия Angular CLI больше локальной версии

При запуске ng serve я получаю это предупреждение о том, что моя глобальная версия CLI превышает мою локальную версию. Я не замечаю никаких проблем из этого предупреждения, но мне было интересно, должны ли две версии синхронизироваться? Кроме того, необходимо ли иметь локальную версию, если у вас есть глобальная версия?

Предупреждение:

Ваша глобальная версия Angular CLI (1.1.1) больше вашей локальной версии (1.0.6). Используется локальная версия Angular CLI.

4b9b3361

Ответ 1

Чтобы ответить на один из вопросов, необходимо, чтобы инструменты работали как на глобальном, так и на локальном уровне.

Если вы попытаетесь запустить приложение ng serve для приложения без локальной установки интерфейса командной строки (только для глобальной установки), вы получите следующую ошибку.

Вы должны быть внутри проекта Angular CLI, чтобы использовать команду serve.

Также будет напечатано это сообщение:

Please take the following steps to avoid issues:
"npm install --save-dev @angular/[email protected]"

Выполните эту команду npm чтобы обновить CLI локально и избежать появления предупреждения.

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

Зачем нам нужна как глобальная, так и локальная установка?

Глобальная установка необходима для запуска нового приложения. Команда ng new <app-name> запускается с помощью глобальной установки интерфейса командной строки. Фактически, если вы попытаетесь запустить ng new находясь внутри структуры папок существующего приложения CLI, вы получите эту прекрасную ошибку:

Вы не можете использовать new команду внутри Angular CLI проекта.

Другими командами, которые можно запустить из глобальной установки, являются ng help, ng get/set с --global, ng version, ng doc и ng completion.

Локальная установка интерфейса командной строки используется после сборки приложения. Таким образом, когда будут доступны новые версии CLI, вы можете обновить глобальную установку, не влияя на локальную установку. Это хорошо для стабильности проекта. Большинство команд ng имеют смысл только с локальной версией, такой как lint, build и serve и т.д.

Согласно readme CLI GitHub, для обновления CLI необходимо обновить глобальный и локальный пакет. Тем не менее, я использовал CLI, где глобальная и локальная версия меняются без каких-либо проблем. Если я когда-нибудь столкнусь с ошибкой, связанной с синхронизацией глобальной и локальной версий CLI, я опубликую это здесь.

Ответ 2

Вот как я решил проблему.

Install latest Angular CLI package locally

Скопируйте и запустите эти команды

ng --version
npm install --save-dev @angular/[email protected]
ng --version

Ответ 3

Это работает для меня: он будет обновлять локальную версию до последней

npm uninstall --save-dev angular-cli
npm install --save-dev @angular/[email protected]
npm install

проверить версию

  ng --version

Ответ 4

npm uninstall --save-dev angular-cli
npm install --save-dev @angular/[email protected]

Существующая конфигурация может быть обновлена автоматически с помощью следующей команды:

ng update @angular/cli

или же:

npm install

Ответ 5

npm uninstall -g @angular/cli
npm cache verify
npm install -g @angular/[email protected]

Тогда в вашем локальном пакете проекта:

rm -rf node_modules dist 
npm install --save-dev @angular/[email protected]
npm i 
ng update @angular/cli 
ng update @angular/core
npm install --save-dev @angular-devkit/build-angular

Получала ниже ошибка Ошибка: Неожиданный конец ввода JSON Неожиданный конец ввода JSON Вышеприведенные шаги помогли из этого поста Не могу обновить angular до версии 6

Ответ 6

В моем случае я просто использовал эту команду в проекте:

ng update @angular/cli

Ответ 7

Выполните следующую команду: npm install --save-dev @angular/[email protected]

После выполнения вышеупомянутой команды консоль может вывести следующее сообщение

Формат конфигурации Angular CLI был изменен, и ваша существующая конфигурация может быть автоматически обновлена с помощью следующей команды: ng update @angular/cli

Ответ 8

Я не владею английским

но если я понимаю проблему, локально ли в проекте у вас есть более старая версия CLI, чем глобально?

И вы хотели бы использовать этот глобальный более новый вместо локального более старого?

Если это так, то для запуска в каталоге проекта достаточно npm link @angular/cli

больше в теме на странице: https://docs.npmjs.com/cli/link

Ответ 9

Сначала узнайте глобальную версию angular-cli, запустив

ng --version

Приведенный выше код покажет, какая версия является глобальной и локальной версиями angular-cli.

Если вы хотите, чтобы глобальные и локальные угловые значения были одинаковыми, вы можете просто сделать

npm install --save-dev @angular/[email protected]

где 1.7.4 - ваша глобальная версия angular-cli

Затем, если вы запустите ng serve --open ваш код должен работать.

Ответ 10

Установка npm --save-dev @angular-devkit/build-angular - помогла ng update @angular/cli → создала angular.json и другие обновления.

Сбор установленных зависимостей... Найдено 58 зависимостей.

 ** Executing migrations for package '@angular/cli' **
            Updating karma configuration
            Updating configuration
            Removing old config file (.angular-cli.json)
            Writing config file (angular.json)
            Some configuration options have been changed, please make sure to update any  npm scripts which you may have modified. DELETE .angular-cli.json CREATE angular.json (4394 bytes) CREATE browserslist (429 bytes) UPDATE karma.conf.js (993 bytes) UPDATE public/tsconfig.spec.json (295 bytes) UPDATE package.json (2618 bytes) UPDATE tsconfig.json (437 bytes) UPDATE tslint.json (3135 bytes) UPDATE public/polyfills.ts (587 bytes) UPDATE public/tsconfig.app.json (199 bytes) npm WARN @angular/[email protected] requires a peer of [email protected]^0.8.4 but none is installed. You must install peer dependencies yourself.

Ответ 11

Удалите текущий angular и установите конкретную версию.

  1. Проверьте версию

    нг --version

  2. если не требуется, удалите версию

    npm uninstall -g @angular/cli

  3. если npm vesrion & lt; 5.x

    очистка кэша npm

  4. Проверьте кеш

    проверка кэша npm

  5. Установить конкретную версию

    npm install -g @angular/cli @major.minor.patch

Ответ 12

Спасибо, отлично работает обновление есть альтернатива, которую я не рекомендую.

ng set --global warnings.versionMismatch=false

Ответ 13

Поместите NouisliderComponent в декларации, а не импортируйте.

@NgModule({
 declarations: [
AppComponent,
NouisliderComponent
],
imports: [
BrowserModule,
FormsModule,
HttpModule,

],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }`

для более пожалуйста ссылайтесь ниже url: https://github.com/tb/ng2-nouislider/issues/38