【发布时间】:2013-01-06 04:45:46
【问题描述】:
我正在使用 Nodejs 编写一些示例程序,这些示例程序也应该可以从浏览器中调用。我在从 Nodejs 中调用 JavaScript 文件时遇到了问题,这种方式也与浏览器 JS 语义兼容(因此特定于 Node 的 require 无法完成这项工作)。
假设我有三个 .js 文件:“A.js”、“B.js”和“C.js”。 “A.js”是用 Node.js 编写的。 “B.js”和“C.js”是用纯 JavaScript 编写的(也就是说,它们应该可以从浏览器调用)。
我需要从“A.js”调用“B.js”中的函数 b()。所以我 eval() "B.js" 导出方法 b()。这工作正常。当我在“B.js”中的函数 b() 调用“C.js”中的函数 c() 时,就会出现问题。
B.js:
function b()
{
console.log('In function b');
c();
}
C.js:
function c()
{
console.log('In function c');
}
如何确保解决依赖关系?任何帮助,将不胜感激。谢谢!!!
【问题讨论】:
-
你能澄清一下“纯”JavaScript 和“节点”的区别吗?
-
纯 JavaScript 没有 require() 或 module.exports。我们可以使用函数名和命名空间进行函数调用,但节点不允许这样做。我们需要需要我们需要使用的文件,并导出需要在其他js文件中使用的模块/函数。
标签: javascript node.js