Javascript / Node / Twilio - ReferenceError:require未定义

时间:2013-11-15 09:15:02

标签: javascript node.js qml

我已经安装了Node:

Node

并在cmd中运行:

npm install twilio

然后我尝试了Twilio提供的示例代码:

var accountSid = 'MyAccountSidHere';
var authToken = "MyAccountAuthTokenHere";
var client = require('twilio')(accountSid, authToken);

client.sms.messages.create({
    body: "Jenny please?! I love you <3",
    to: "SomeNumber",
    from: "MyNumber"
}, function(err, message) {
    process.stdout.write(message.sid);
});

将此保存到MyFile.js文件并双击它。

我收到错误消息:

ReferenceError: require is not defined

这是我第一次遇到JavaScript,我发现了很多类似的问题,但一直未能解决这个问题。

我将它与QML一起使用,所以我想使用:

加载它
import "MyFile.js" as MyFile

然后将javascript代码作为函数调用。

1 个答案:

答案 0 :(得分:3)

我已经阅读了一些QML,我看不出你如何在QML中使用node.js模块。 QML用作QT是JavaScript引擎的语言,node.js是服务器端Javascript引擎。

require()函数是node.js的核心功能,它是引擎的一部分。它不是特定于语言的东西,就像基于浏览器的Javascript中的 window 对象一样,Javascript语言不是Javascript语言。

正如我在评论中所说,您应该查看node.js实际上是什么:服务器端JavaScript引擎,它执行JavaScript文件。它不是一个可以加载到QT等其他引擎的框架。

如果您从命令行使用它,您的代码将会运行:

node MyFile.js

我怀疑这对你的用例作为QML导入有用。