vm环境 vm的runInNewContext 方法创建一个新的上下文环境。类似于 apply,call的方法。第一个参数替代为,一段js字符串类似eval的执行。
如下: const vm = require('vm'); vm.runInNewContext('const num = 0; num+b',{b:2}) 返回最后一句执行代码的结果。
所有如果要通过字符串获取html标签的话,应该在引号内再加一层引号,表示引号年内部的内容执行 .
const user = { name: 'lilei' }
const html =vm.runInNewContext(' `<h1> user.name <h1/>` ',{ user }) console.log(html) // <h1> lilei<h1/> 一定是双层引号