diff --git a/src/TemplateMarkInterpreter.ts b/src/TemplateMarkInterpreter.ts index c9c2e09..cbf46c8 100644 --- a/src/TemplateMarkInterpreter.ts +++ b/src/TemplateMarkInterpreter.ts @@ -160,7 +160,7 @@ function getJsonPath(rootData: any, currentNode: any, paths: string[]): string { } } - if (currentNode.name !== 'this') { + if (currentNode.name !== "this" && currentNode.name !== "top") { withPath.push(`['${currentNode.name}']`); } diff --git a/src/worker.js b/src/worker.js index badd438..9d67299 100644 --- a/src/worker.js +++ b/src/worker.js @@ -34,11 +34,17 @@ process.on('message', (msg) => { const args = [dayjs,jp,...msg.arguments]; const fun = new Function(...argNames, code); const result = fun(...args); - process.send({ result }); - process.exit(); + process.send({ result }, () => { + setTimeout(() => { + process.exit(); + }, 50); + }); } catch (err) { // console.log(`worker: ${err} ${msg.code}`); - process.send({ message: err.toString() }); - process.exit(1); + process.send({ message: err.toString() }, () => { + setTimeout(() => { + process.exit(1); + }, 50); + }); } });