UNPKG

@luban-cli/cli-plugin-service

Version:
40 lines 1.57 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.generateDocument = void 0; const server_1 = __importDefault(require("react-dom/server")); const react_helmet_1 = __importDefault(require("react-helmet")); const ejs_1 = __importDefault(require("ejs")); const serialize_javascript_1 = __importDefault(require("serialize-javascript")); /** * generate html document * @param template * @param context * @param App * @param injectedScripts * @param injectedStyles */ exports.generateDocument = (template, context, App, injectedScripts, injectedStyles) => { let document = ""; if (App) { const content = server_1.default.renderToString(App); const helmet = react_helmet_1.default.renderStatic(); document = ejs_1.default.render(template, { CONTENT: content, __INITIAL_DATA__: serialize_javascript_1.default(context.initProps), __USE_SSR__: true, __INITIAL_STATE__: serialize_javascript_1.default(context.initState), INJECTED_STYLES: injectedStyles, INJECTED_SCRIPTS: injectedScripts, link: helmet.link.toString(), meta: helmet.meta.toString(), script: helmet.script.toString(), style: helmet.style.toString(), title: helmet.title.toString(), }); } return document; }; //# sourceMappingURL=generateDocument.js.map