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