我已经安装了 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 代码作为函数调用。
最佳答案
我读过一些 QML 内容,但我不明白如何在 QML 中使用 node.js 模块。 QML 用作一种语言,其中 QT 是 JavaScript 引擎,node.js 是服务器端 Javascript 引擎。
require()函数是node.js的核心函数,是引擎的一部分。它不是特定于语言的东西,就像基于浏览器的 Javascript 中的 window 对象不是 Javascript 语言中的东西一样。
正如我在评论中所说,您应该检查一下 Node.js 实际上是什么:一个服务器端 JavaScript 引擎,它执行 JavaScript 文件。它不是一个可以加载到 QT 等其他引擎中的框架。
如果您从命令行使用它,您的代码将会运行:
node MyFile.js
我怀疑这对于您作为 QML 导入的用例是否有帮助。
关于Javascript/Node/Twilio - ReferenceError : require is not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19997406/