【问题标题】:Using external javascript files in node.js without using export and require在 node.js 中使用外部 javascript 文件而不使用 export 和 require
【发布时间】:2017-08-31 17:16:21
【问题描述】:

我不喜欢 node 中的整个 export/require 东西,它需要太长时间。假设我有一个文件 server.js,并且我想在whatever.js 中使用函数。在 html 中,我只是将其添加到标题中:

<script src='whatever.js'></script>

然后我就可以在我的正文脚本中使用whatever.js的所有功能了。

但在节点中,在 server.js 文件中我会这样做:

var myobject = require('./whatever.js');

但是我需要将它设置为 myobject,然后我需要转到whatever.js 并手动决定我要导出哪些函数。更不用说输入 myobject.someFunction() 比 someFunction() 要长得多,我需要记住我暴露/没有暴露的内容。

我想要一些我可以去的地方:

require('./whatever.js');

它把它全部放在全局中,没有 bs。就像在旧的 html/javascript 中一样。有没有办法在节点中做到这一点?

【问题讨论】:

  • 不是同一个问题,还有可怕的答案
  • 我读过的关于可变范围 un nodejs 的最佳答案:stackoverflow.com/a/35433080/7131047
  • 您可以编写一个脚本来查找函数并将 export const 附加到每个函数,例如。 function foo => export const foo 并重写文件
  • 如果您不关心质量和可维护性,只需将所有内容放在一个巨大的 javascript 文件中,然后您甚至不需要加载任何内容。 (有点讽刺,以防你无法分辨:p)

标签: javascript node.js


【解决方案1】:

这样就可以了,

var fs = require('fs');

eval(fs.readFileSync('whatever.js')+'');
 // here call functions from whatever.js file

【讨论】:

  • 哈哈,这是我一生中见过的最骇人听闻的废话,所以不会使用它。但这是非常棒的答案+1。
猜你喜欢
  • 1970-01-01
  • 2012-08-10
  • 2013-11-24
  • 2017-01-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-10
  • 2012-06-19
相关资源
最近更新 更多