33 # 基本模板引擎

虚拟机环境(沙箱)

比如:测试用例的时候可以使用沙箱这个干净的环境执行

内部一般情况下操作的都是字符串逻辑,如何让一个字符串运行?

1、使用 eval,默认会取当前的作用域下的变量,这是个不干净的环境

const a = 100;
eval("console.log('a---->', a)");

33 # 基本模板引擎_第1张图片

2、使用 new Function 来创建一个沙箱环境,让字符串执行

const b = 200;
let fn = new Function("c", "d", "e", "console.log('b---->', b)");
console.log(fn.toString());
fn();

33 # 基本模板引擎_第2张图片

ejs 模块渲染

npm install ejs

33 # 基本模板引擎_第3张图片

新建一个模板

DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Documenttitle>
head>

<body>
    <div>
        <%=name%>
    div>
    <div>
        <%=age%>
    div>
    <ul>
        <%arr.forEach(item=> {%>
            <li>
                <%=item%>
            li>
            <%})%>
    ul>
body>

html>

然后使用模板

const ejs = require("ejs");
const path = require("path");

ejs.renderFile(
    path.resolve(__dirname, "../file/template.html"),
    { name: "kaimo", age: "313", arr: [1, 2, 3] },
    (err, data) => {
        console.log(data);
    }
);

33 # 基本模板引擎_第4张图片

你可能感兴趣的:(Node,/,Node,框架,前端工程架构,模板)