angular
March 17
Что такое платформа (platform) в Angular
Платформа - это среда запуска приложений Angular.
Платформа инициализируется при старте приложения, в случае разработки обычного SPA приложения может быть инициализирована одним из способов:
1) Если используется подход Standalone компонентов
import { bootstrapApplication } from '@angular/platform-browser'; import { appConfig } from './app/app.config'; import { AppComponent } from './app/app.component'; bootstrapApplication(AppComponent, appConfig) .catch((err) => console.error(err));
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic' import { AppModule } from './app/app.module' platformBrowserDynamic() .bootstrapModule(AppModule) .catch((err) => console.error(err))
Вне зависимости от типа приложений выполняет одну функцию: создание инжекторов, привязок к DOM через ngZone, компиляцию кода и выбирает способ рендеринга.
В зависимости от среды выполнения может быть несколько платформ:
- @angular/platform-browser Запуск Angular-приложения в браузере
- @angular/platform-server Запуск Angular-приложения на сервере (SSR)
- @angular/elements Использование Angular-компонентов как Web Components
Например, если мы хотим сделать приложение на ngModule с поддержкой SSR, то инициализация платформы будет выглядеть так:
import { platformServer } from '@angular/platform-server'; import { AppServerModule } from './app/app.server.module'; platformServer() .bootstrapModule(AppServerModule) .catch(err => console.error(err));
В случае с standalone приложением ничего менять не придется, используется та же функция bootstrapApplication