-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathdemo.js
32 lines (27 loc) · 966 Bytes
/
demo.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
var components = require("server-components");
require("./src/index.js");
var express = require("express");
var app = express();
app.use(require("./node_modules/server-components-express/src/index.js"));
var html = `
<html>
<head></head>
<body>
<leaflet-map lat="41.3851" long="2.1734" zoom="12">
<leaflet-marker lat="41.4036" long="2.1744"></leaflet-marker>
<leaflet-marker lat="41.4225" long="2.1186"></leaflet-marker>
<leaflet-marker lat="41.3640" long="2.1675"></leaflet-marker>
</leaflet-map>
</body>
</html>
`;
// Do an initial render before requests, to check whether it works
components.renderPage(html).then(() => {
console.log("Initial render successful");
}).catch((err) => {
console.error("Error on initial render", err);
});
// Start a server rendering on demand
app.get('/', (req, res) => res.renderPage(html));
app.use(express.static('.'));
app.listen(3000, () => console.log("Server listening on 3000"));