我需要顺序启动外部脚本,条件是只有在完成外部脚本的全部内容(包括promises)后才启动下面的代码。我使用shell.js
,但也许还有其他工具。我需要运行脚本,而不导入到“父”中。
外部脚本代码(external.js):
const fs = require("fs");
const util = require("util");
const write = util.promisify(fs.writeFile);
(async () => {
await write("Hello.txt", "Hello");
})();
调用它的“父”代码:
const fs = require("fs");
const util = require("util");
const shell = require("shelljs");
const read = util.promisify(fs.readFile);
(async () => {
await shell.exec("node external.js", { async: true });
const data = await read('Hello.txt');
// do something with data...
})();
请您告诉我,这个任务有没有可能实现,怎么实现?谢谢关注!
1条答案
按热度按时间qgelzfjb1#
如果
external.js
执行文件操作,则node external.js
进程将仅在文件操作完成后退出。应该能满足你要求。