现在有个main.js,还要许多子文件js在文件夹js中,请问nodejs中如何动态加载执行js文件?
网友回复
有两种方式
第一种、加载js文件compile
//main.js
const fs = require('fs')
fs.readFile = util.promisify(fs.readFile)
const bundle = await fs.readFile('./bundle.js', 'utf-8') //此时的bundle为String
const m = new module.constructor()
m._compile(bundle, 'bundle.js') // 第一个参数为要执行的代码字符串,第二个参数为文件名
//此时就可以通过m.exports来调用bundle.js文件中exports出来的东西
这种如果子文件有require的话就会出现找不到包第二种、vm环境执行
//main.js
const fs = require('fs')
const NativeModule = require('module')
const vm = require('vm')
fs.readFile = util.promisify(fs.readFile)
cons...点击查看剩余70%


