【问题标题】:Adding external javascript files on node.js在 node.js 上添加外部 javascript 文件
【发布时间】:2011-12-14 16:53:19
【问题描述】:

我有一个节点服务器,我想添加一个外部 .js 文件(比如something.js)。我现在有这个代码:

var st = require('./js/something');

其中something.js/js/ 文件夹中的JavaScript 文件。服务器编译并运行,但是当我尝试使用something.js 中定义的函数时,节点告诉我它们没有定义。

我也尝试使用 st.s() 之类的方法运行它们,但没有任何反应,并且我有一个错误提示该对象没有方法 s()

谁能帮帮我?

谢谢,

编辑:

记录st 给出{}(我从console.log(JSON.stringify(st)) 获得它。同时执行console.log(st) 给出{} 作为结果。

something.js的内容只是一堆这样定义的函数

function s() {
    alert("s");
}

function t() {
    alert("t");
}

【问题讨论】:

  • 你能把something.js的代码贴在这里吗?
  • 您不需要将其转换为 JSON。就做console.dir( st );...
  • Racar 能否请您更具体地了解出口情况?我没有从那个问题中得到如何使用它们,或者在这种情况下我应该如何使用它们。
  • 在你的 something.js 文件中,执行“module.exports = { st: function() { console.log('test'); } }”。

标签: javascript node.js


【解决方案1】:

Node.js 使用CommonJS 模块格式。本质上,附加到exports 对象的值可供模块用户使用。所以如果你使用这样的模块

var st = require('./js/something');
st.s();
st.t();

您的模块必须导出这些功能。因此,您需要将它们附加到导出对象。

exports.s = function () {
    console.log("s");
}

exports.t = function () {
    console.log("t");
}

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2013-01-20
  • 1970-01-01
  • 2020-01-17
  • 2023-03-18
  • 1970-01-01
  • 1970-01-01
  • 2020-11-26
  • 2020-12-26
相关资源
最近更新 更多