'require' 关键字在节点红色功能节点中不起作用
'require' keyword doesn't work within Node Red Function node
节点红色功能节点的第一行是
var moment = require('moment-timezone');
...
我正在尝试为传感器数据建立一个正确的时区 date/time 标记。此节点运行时出现以下错误;
ReferenceError: require is not defined (line 1, col 14)
顺便说一句,此功能还有其他 JavaScript 始终完美运行。
我的 Package.json 没有错误,我添加了 "moment-timezone":"0.5.3"。
我通过一些研究了解到我需要向 settings.js 文件中添加一些内容,但是,我需要一些关于添加内容的指导,以便识别 'require'。
如 this GitHub issue answer 所述,您不能在函数节点内使用 require
本身,但您可以将外部模块添加到用于 运行 函数的沙箱中。您可以在 settings.js
文件中执行此设置 functionGlobalContext
,如下所示:
functionGlobalContext: {
tzModule:require('moment-timezone')
}
然后可以使用以下代码引用该模块:
var moment = global.get('tzModule');
查看 Node-RED documentation on global-context 了解完整详情。
Settings file:/Users/aiquantong/.node-red/settings
请在此文件中进行配置,它将起作用。
节点红色功能节点的第一行是
var moment = require('moment-timezone');
...
我正在尝试为传感器数据建立一个正确的时区 date/time 标记。此节点运行时出现以下错误;
ReferenceError: require is not defined (line 1, col 14)
顺便说一句,此功能还有其他 JavaScript 始终完美运行。
我的 Package.json 没有错误,我添加了 "moment-timezone":"0.5.3"。
我通过一些研究了解到我需要向 settings.js 文件中添加一些内容,但是,我需要一些关于添加内容的指导,以便识别 'require'。
如 this GitHub issue answer 所述,您不能在函数节点内使用 require
本身,但您可以将外部模块添加到用于 运行 函数的沙箱中。您可以在 settings.js
文件中执行此设置 functionGlobalContext
,如下所示:
functionGlobalContext: {
tzModule:require('moment-timezone')
}
然后可以使用以下代码引用该模块:
var moment = global.get('tzModule');
查看 Node-RED documentation on global-context 了解完整详情。
Settings file:/Users/aiquantong/.node-red/settings
请在此文件中进行配置,它将起作用。