Serve Static¶
In order to serve static content like a Single Page Application (SPA) we can use the ServeStaticModule
from the @nestjs/serve-static
package.
Installation¶
First we need to install the required package:
Bootstrap¶
Once the installation process is done, we can import the ServeStaticModule
into the root AppModule
and configure it by passing in a configuration object to the forRoot()
method.
With this in place, build the static website and place its content in the location specified by the rootPath
property.
Configuration¶
ServeStaticModule can be configured with a variety of options to customize its behavior. You can set the path to render your static app, specify excluded paths, enable or disable setting Cache-Control response header, etc. See the full list of options here.
Warning
The default renderPath
of the Static App is *
(all paths), and the module will send "index.html" files in response.
It lets you create Client-Side routing for your SPA. Paths, specified in your controllers will fallback to the server. You can change this behavior setting
serveRoot
,renderPath
combining them with other options.
Example¶
A working example is available here.