Совместимость между версией Angular CLI и версией Angular Core? - PullRequest
0 голосов
/ 07 января 2019

Есть ли способ узнать, какую версию Angular CLI установить, которая совместима с моей версией Angular Core? Они полностью независимы?

Работая над существующим приложением Angular с Core v5.2.8, я вижу, что они используют CLI v6.0.8, поэтому мне было интересно, какую версию CLI нам следует использовать?

Совместимость между Angular CLI и Angular Core не документирована нигде.

1 Ответ

0 голосов
/ 07 января 2019

Обычно люди всегда используют глобальную установку. Однако это может привести к несоответствиям со старыми проектами.

Версии в вашем package.json всегда должны быть совместимы.

Чтобы убедиться, что вы используете локальную версию, сделайте следующее:

npm run -- ng generate component foo

Вместо этого:

ng generate component foo

Тогда он всегда будет использовать локальную версию.

Пряжа пропускает все параметры, поэтому не нуждается в уродливой аннотации:

yarn run ng generate component foo

Хорошим примером этого является, например, Как Angular справляется со службой DI. Принимая во внимание, что в предыдущих версиях необходимо было добавлять каждую службу в модуль приложения в качестве поставщика.

Это было изменено в версии 6, так что на самом деле это действительно актуально:

В v6 и более поздних версиях Angular декоратор @Injectable был расширен с возможностью, которая привела к другому шаблону:

До:

@Injectable()

После того, как:

@Injectable({
  providedIn: 'root'
})

Тем самым устраняется необходимость добавления всех служб в модуль приложения в приложении.

Таким образом, при создании службы из CLI v6 был создан шаблон, несовместимый с v5.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...