prerender-webpack-plugin
v1.0.0
Published
A prerender plugin for webpack. Using express and puppeteer. Work well with React/Vue.
Downloads
19
Readme
Prerender-webpack-plugin
What is Prerendering?
Pre-rendering describes the process of rendering a client-side application at build time, producing useful static HTML that can be sent to the browser instead of an empty bootstrapping page.
Pre-rendering is like Server-Side Rendering, just done at build time to produce static files. Both techniques help get meaningful content onto the user's screen faster.How does it work?
- After build, run a static web server using new files with
express. - Open the web page with
puppeteer, a headless browser. - After the browser rendering, get the html string and write it to html file.
Usage
Intall prerender-webpack-plugin as a development dependency:
npm i -D prerender-webpack-pluginAdd plugin to your webpack configuration:
const PrerenderWebpackPlugin = require('Prerender-webpack-plugin').default
...
plugins: [
new PrerenderWebpackPlugin()
]
...
or pass options
...
plugins: [
new PrerenderWebpackPlugin({
...options
})
]
...
Options
All options are optional.
| Option | Type | Default | Description |
|---------------|---------|---------------|-------------|
| staticPath | string | / | The static path of web server, '/' means the out path of webpack config
| route | string | / | The page will be open in browser, and save it to html file
| template | string | index.html | HTML file to update
| selector | string | #root | HTML string wrapper
| replacement | string | {{prerender}} | The string will be replaced with prerender HTML
| host | string | 127.0.0.1 | Host of web server
| port | number | 8848 | Port of web server
| duration | number | 4000 | Millseconds waiting for browser render the page
| disabled | boolean | false | Determine plugin work or not
