0

我已经从以下位置安装了节点:

节点

并在 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代码作为函数调用。

4

1 回答 1

3

我对 QML 进行了一些阅读,但不知道如何在 QML 中使用 node.js 模块。QML 用作一种语言,其中 QT 是 JavaScript 引擎,node.js 是服务器端 Javascript 引擎。

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

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

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

node MyFile.js

我怀疑这对您作为 QML 导入的用例是否有帮助。

于 2013-11-15T09:43:34.443 回答