如何替换外部js文件中的变量名

时间:2018-11-02 03:47:46

标签: javascript node.js electron

我正在开发一个node.js Terminal项目,该项目需要在运行之前编译javascript文件以防止数据泄漏!

没有人知道使用node.js进行以下类似操作的简便方法,编译后的文件将在电子浏览器页面中运行!

在编译之前:

var text = "Hello my friends";
var num = 123;
function test(abc) {
  let num = 3;
  let comp = abc + 3;
  return comp;
}

编译后:

window.saves[project name here].text = "Hello my friends";
window.saves[project name here].num = 123;
window.saves[project name here].test = function(abc) {
  let num = 3;
  let comp = abc + 3;
  return comp;
}

随时提出问题,我会尽力回答他们,以帮助您。

1 个答案:

答案 0 :(得分:1)

您可以使用Babel plugins来实现。

Babel是一个JavaScript翻译器,可以执行代码转换,并具有可以在node中轻松使用的API,但是为其编写插件并不是一件容易的事。

我发现这篇文章是一个很好的起点:Babel Plugin Handbook
此处还有一篇附加文章:Understanding ASTs by Building Your Own Babel Plugin

那里也有一些插件,它们与您要寻找的不完全相同,但是非常相似。 Perpah,您可以检查其源代码以了解其实现方式: