Server communication

Server communication

Maquette does not prescribe how you should communicate with the server, but there is one gotcha. You must tell the maquette projector to rerender the DOM when data arrives asynchronously.

Using XMLHttpRequest

First let me show you how this can be done when you use plain XMLHttpRequest

Using fetch

If you want to use the modern fetch API (Needs polyfilling for IE, Edge and Safari) you can use a function similar to the fetchText function below:

Using a library

Most developers do not use XMLHttpRequest or fetch directly, but use some kind of library. Most libraries provide a hook which is invoked whenever a response arrives. You can use such a hook to call projector.scheduleRender(). I will show how this works with the lightweight promise-based axios library.

More information about scheduleRender can be found in the API documentation.