Зависимости рабочей области от npm
Angular Framework, Angular CLI и компоненты, используемые приложениями Angular, упаковываются в пакеты npm и распространяются через реестр npm.
Вы можете скачать и установить эти пакеты npm с помощью CLI-клиента npm, который устанавливается и запускается как приложение Node.js®. По умолчанию в Angular CLI используется клиент npm.
Кроме того, вы можете использовать клиент Yarn для загрузки и установки пакетов npm.
package.json
И npm, и yarn устанавливают пакеты, указанные в файле package.json.
Команда CLI ng new создает файл package.json при создании нового рабочего пространства. Этот package.json используется всеми проектами в рабочей области, включая первоначальный проект приложения, который создается CLI при создании рабочей области.
Первоначально этот package.json включает начальный набор пакетов, некоторые из которых требуются Angular, а другие поддерживают общие сценарии приложений. Вы добавляете пакеты в package.json по мере развития вашего приложения. Вы можете даже удалить некоторые.
Пакет package.json состоит из двух групп пакетов:
- Зависимости необходимы для запуска приложений.
- DevDependencies необходимы только для разработки приложений.
зависимости
Пакеты, перечисленные в разделе зависимостей файла package.json, необходимы для запуска приложений.
Раздел зависимостей в package.json содержит
- Угловые пакеты: Угловой сердечник и дополнительные модули; имена их пакетов начинаются с @ angular /.
- Пакеты поддержки: сторонние библиотеки, которые должны присутствовать для запуска приложений Angular.
- Пакеты Polyfill: Polyfill закрывают пробелы в реализации JavaScript в браузере.
Чтобы добавить новую зависимость, используйте команду ng add.
Угловые пакеты
Следующие пакеты Angular включены в качестве зависимостей в файл package.json по умолчанию для новой рабочей области Angular. Полный список пакетов Angular можно увидеть в справочнике по Angular API.
ИМЯ ПАКЕТА | ОПИСАНИЕ |
---|---|
@ угловая / анимация | Библиотека анимации Angular позволяет легко определять и применять анимационные эффекты, такие как переходы страниц и списков. |
@ Угловая / общая | Обычно необходимые услуги, каналы и директивы, предоставляемые командой Angular. HttpClientModule также находится здесь, в подпапке @ angular / common / http. |
@ Угловой / составитель | Шаблонный компилятор Angular. Он понимает шаблоны и может преобразовать их в код, который заставляет приложение работать и отображать. Обычно вы не взаимодействуете с компилятором напрямую; скорее, вы используете его косвенно через платформу-браузер-динамический при компиляции JIT в браузере. |
@ Угловая / ядро | Критические части среды выполнения, которые необходимы каждому приложению. Включает все декораторы метаданных, компонент, директиву, внедрение зависимостей и хуки жизненного цикла компонента. |
@ угловые / формы | Поддержка как шаблонных, так и реактивных форм. |
@ Угловое / HTTP | Устаревший HTTP-клиент Angular, который в версии 5.0 устарел в пользу @ angular / common / http. |
@ угловой / платформенный браузер | Все, что связано с DOM и браузером, особенно части, которые помогают визуализировать в DOM. Этот пакет также включает метод bootstrapModuleFactory () для начальной загрузки приложений для производственных сборок, которые предварительно компилируются с AOT. |
@ angular / платформа браузера динамическая | Включает поставщиков и методы для компиляции и запуска приложения на клиенте с использованием JIT-компилятора. |
@ Угловой / маршрутизатор | Модуль маршрутизатора перемещается между страницами вашего приложения при изменении URL браузера. |
Пакеты поддержки
Следующие пакеты поддержки включены в качестве зависимостей в файл package.json по умолчанию для нового рабочего пространства Angular.
ИМЯ ПАКЕТА | ОПИСАНИЕ |
---|---|
rxjs | Многие Angular API возвращают наблюдаемые. RxJS - это реализация предложенной спецификации Observables, которая в настоящее время находится на рассмотрении комитета TC39, который определяет стандарты для языка JavaScript. |
zone.js | Angular полагается на zone.js для запуска процессов обнаружения изменений Angular, когда собственные операции JavaScript вызывают события. Zone.js является реализацией спецификации, которая в настоящее время находится на рассмотрении комитета TC39 и определяет стандарты для языка JavaScript. |
Пакеты Polyfill
Многим браузерам не хватает встроенной поддержки некоторых функций в последних стандартах HTML, которые необходимы Angular. Полифиллы могут эмулировать отсутствующие функции. Руководство по поддержке браузеров объясняет, каким браузерам нужны полифилы и как их можно добавить.
В package.json для нового рабочего пространства Angular устанавливается пакет core-js, который заполняет недостающие функции для нескольких популярных браузеров.
DevDependencies
Пакеты, перечисленные в разделе devDependencies файла package.json, помогают разрабатывать приложение на локальном компьютере. Вы не развертываете их с производственным приложением.
Чтобы добавить новый devDependency, используйте одну из следующих команд:
npm install --dev <package-name>
yarn add --dev <package-name>
Следующие devDependencies предоставлены в файле package.json по умолчанию для новой рабочей области Angular.
ИМЯ ПАКЕТА | ОПИСАНИЕ |
---|---|
@angular devkit / build angular | Угловые инструменты для сборки. |
@ Угловой / кли | Угловые инструменты CLI. |
@ angular / compiler cli | Компилятор Angular, который вызывается командами Angular CLI ng build и ng serve. |
@ угловой / языковой сервис | Служба языка Angular анализирует шаблоны компонентов и предоставляет информацию о типах и ошибках, которую редакторы, поддерживающие TypeScript, могут использовать для улучшения работы разработчика. |
@types / ... | Файлы определения TypeScript для сторонних библиотек, таких как Jasmine и Node.js. |
codelyzer | Линтер для приложений Angular, правила которого соответствуют руководству по стилю Angular. |
жасмин / ... | Пакеты для поддержки библиотеки тестов Jasmine. |
карма/... | Пакеты для поддержки кармы. |
транспортир | Сквозная (e2e) среда для приложений Angular. Построен поверх WebDriverJS. |
TS-узел | Среда выполнения TypeScript и REPL для Node.js. |
tslint | Инструмент статического анализа, который проверяет код TypeScript на наличие ошибок читаемости, ремонтопригодности и функциональности. |
машинопись | Языковой сервер TypeScript, включая компилятор tsc TypeScript. |
Предыдущая: Конфигурация TypeScript
Далее: Компилятор Ahead-of-Time (AOT)
Новый контент: Composer: менеджер зависимостей для PHP , R программирования