Эсприма AST дерево перебирает и модифицирует узел различимого содержимого
Я использую Esprima для создания дерева AST из исходного кода директивы angularjs.
var esprima = require("esprima");
var escodegen = require('escodegen');
var estraverse = require('estraverse');
const fs = require('fs');
const testFolder = 'PathForDirectiveFile\\SampleDirective.js';
var fileContent = fs.readFileSync(testFolder, "utf8");
var ast = esprima.parseScript(fileContent);
estraverse.traverse(ast, {
enter: function(node) {
if (node.type === "ExpressionStatement") {
// debugger;
}
}
});
Итак, теперь я хочу перейти к области видимости и изменить ее содержимое, наконец, восстановить исходный код из модифицированного дерева AST.
Я не знаю, как этого добиться. Любое предложение требуется.