• Version 17.3.5
  • Published
  • 4.31 MB
  • 2 dependencies
  • MIT license


npm i @angular/platform-server
yarn add @angular/platform-server
pnpm add @angular/platform-server


Angular - library for using Angular in Node.js




const BEFORE_APP_SERIALIZED: InjectionToken<readonly (() => void | Promise<void>)[]>;
  • A function that will be executed when calling renderApplication or renderModule just before current platform state is rendered to string.


const INITIAL_CONFIG: InjectionToken<PlatformConfig>;
  • The DI token for setting the initial config for the platform.



    variable ɵSERVER_CONTEXT

    const ɵSERVER_CONTEXT: InjectionToken<string>;
    • An internal token that allows providing extra information about the server context (e.g. whether SSR or SSG was used). The value is a string and characters other than [a-zA-Z0-9-] are removed. See the default value in DEFAULT_SERVER_CONTEXT const.


    const ɵSERVER_RENDER_PROVIDERS: Provider[];

      variable VERSION

      const VERSION: Version;


      function platformDynamicServer

      platformDynamicServer: (
      extraProviders?: StaticProvider[] | undefined
      ) => PlatformRef;
      • The server platform that supports the runtime compiler.

        See Also


        add an import @angular/compiler and replace the usage with platformServer instead.

      function platformServer

      platformServer: (extraProviders?: StaticProvider[] | undefined) => PlatformRef;

      function provideServerRendering

      provideServerRendering: () => EnvironmentProviders;
      • Sets up providers necessary to enable server rendering functionality for the application.

        Basic example of how you can add server support to your application:

        bootstrapApplication(AppComponent, {
        providers: [provideServerRendering()]


        A set of providers to setup the server.

      function renderApplication

      renderApplication: <T>(
      bootstrap: () => Promise<ApplicationRef>,
      options: {
      document?: string | Document;
      url?: string;
      platformProviders?: Provider[];
      ) => Promise<string>;
      • Bootstraps an instance of an Angular application and renders it to a string.

        const bootstrap = () => bootstrapApplication(RootComponent, appConfig);
        const output: string = await renderApplication(bootstrap);

        Parameter bootstrap

        A method that when invoked returns a promise that returns an ApplicationRef instance once resolved.

        Parameter options

        Additional configuration for the render operation: - document - the document of the page to render, either as an HTML string or as a reference to the document instance. - url - the URL for the current render request. - platformProviders - the platform level providers for the current render request.


        A Promise, that returns serialized (to a string) rendered page, once resolved.

      function renderModule

      renderModule: <T>(
      moduleType: Type<T>,
      options: {
      document?: string | Document;
      url?: string;
      extraProviders?: StaticProvider[];
      ) => Promise<string>;
      • Bootstraps an application using provided NgModule and serializes the page content to string.

        Parameter moduleType

        A reference to an NgModule that should be used for bootstrap.

        Parameter options

        Additional configuration for the render operation: - document - the document of the page to render, either as an HTML string or as a reference to the document instance. - url - the URL for the current render request. - extraProviders - set of platform level providers for the current render request.


      class PlatformState

      class PlatformState {}
      • Representation of the current platform state.


      constructor(_doc: any);

        property ɵfac

        static ɵfac: i0.ɵɵFactoryDeclaration<PlatformState, never>;

          property ɵprov

          static ɵprov: i0.ɵɵInjectableDeclaration<PlatformState>;

            method getDocument

            getDocument: () => any;
            • Returns the current DOM state.

            method renderToString

            renderToString: () => string;
            • Renders the current state of the platform to string.

            class ServerModule

            class ServerModule {}
            • The ng module for the server.

            property ɵfac

            static ɵfac: i0.ɵɵFactoryDeclaration<ServerModule, never>;

              property ɵinj

              static ɵinj: i0.ɵɵInjectorDeclaration<ServerModule>;

                property ɵmod

                static ɵmod: i0.ɵɵNgModuleDeclaration<ServerModule, never, [any, any], [any]>;

                  class ServerTransferStateModule

                  class ServerTransferStateModule {}
                  • NgModule to install on the server side while using the TransferState to transfer state from server to client.

                    Note: this module is not needed if the renderApplication function is used. The renderApplication makes all providers from this module available in the application.


                    no longer needed, you can inject the TransferState in an app without providing this module.

                  property ɵfac

                  static ɵfac: i0.ɵɵFactoryDeclaration<ServerTransferStateModule, never>;

                    property ɵinj

                    static ɵinj: i0.ɵɵInjectorDeclaration<ServerTransferStateModule>;

                      property ɵmod

                      static ɵmod: i0.ɵɵNgModuleDeclaration<


                        interface PlatformConfig

                        interface PlatformConfig {}
                        • Config object passed to initialize the platform.

                        property baseUrl

                        baseUrl?: string;
                        • Note: this option has no effect and can be removed from the config.

                          The base URL for resolving absolute URL for HTTP requests. It must be set if useAbsoluteUrl is true, and must consist of protocol, hostname, and optional port. This option has no effect if useAbsoluteUrl is not enabled.


                          This option is a noop.

                        property document

                        document?: string;
                        • The initial DOM to use to bootstrap the server application. create a new DOM using Domino

                        property url

                        url?: string;
                        • The URL for the current application state. This is used for initializing the platform's location. protocol, hostname, and port will be overridden if baseUrl is set. none

                        property useAbsoluteUrl

                        useAbsoluteUrl?: boolean;
                        • Note: this option has no effect and can be removed from the config.

                          Whether to append the absolute URL to any relative HTTP requests. If set to true, this logic executes prior to any HTTP interceptors that may run later on in the request. baseUrl must be supplied if this flag is enabled.


                          This option is a noop. false

                        Package Files (1)

                        Dependencies (2)

                        Dev Dependencies (0)

                        No dev dependencies.

                        Peer Dependencies (5)


                        To add a badge like this onejsDocs.io badgeto your package's README, use the codes available below.

                        You may also use Shields.io to create a custom badge linking to https://www.jsdocs.io/package/@angular/platform-server.

                        • Markdown
                        • HTML
                          <a href="https://www.jsdocs.io/package/@angular/platform-server"><img src="https://img.shields.io/badge/jsDocs.io-reference-blue" alt="jsDocs.io"></a>