在节点红流中使用节点模块bignum
Using node module bignum in a node-red flow
我正试图在节点红流中的函数中使用节点模块bignum。我已经将节点模块安装在与settings.js相同的文件夹中
functionGlobalContext: {
bignum:require('bignum')
},
我的功能看起来像这个
var bignum = context.global.bignum;
var b = bignum('782910138827292261791972728324982')
.sub('182373273283402171237474774728373')
.div(8)
msg.payload = b;
return msg;
出于某种原因,它只返回这个
[msg.payload] : object
{}
bignum作为msg.payload传递,只是在调试面板中没有正确呈现
这可以通过以下流程进行检查
[{"id":"4559ab0b.848204","type":"function","name":"","func":"var bignum = context.global.bignum;'n'nvar b = bignum('782910138827292261791972728324982')'n .sub('182373273283402171237474774728373')'n .div(8);'n'nmsg.payload = b;'n'nconsole.log('"%j'", msg.payload);'nconsole.log('"%j'", b);'nconsole.log(b);'nconsole.log('"%j'", msg);'n'nreturn msg;","outputs":1,"noerr":0,"x":413,"y":186,"z":"6dffe97f.085fd8","wires":[["152e806f.249de8"]]},{"id":"28153711.bd78f","type":"inject","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":203,"y":140,"z":"6dffe97f.085fd8","wires":[["4559ab0b.848204"]]},{"id":"62001fd9.03c0c8","type":"debug","name":"","active":true,"console":"false","complete":"false","x":712,"y":191,"z":"6dffe97f.085fd8","wires":[]},{"id":"152e806f.249de8","type":"function","name":"","func":"console.log('"2'");'nconsole.log(msg.payload);'nreturn msg;","outputs":1,"noerr":0,"x":543,"y":256,"z":"6dffe97f.085fd8","wires":[["62001fd9.03c0c8"]]}]
我会在这里打开一个问题来查看
更新
这很可能是因为bignum没有实现toString方法,所以Node RED不知道如何呈现输出。解决这个问题的最好方法可能是用bignum而不是Node RED来引发问题。
更新2
节点RED问题具有最新信息
https://github.com/node-red/node-red/issues/690
相关文章:
- 节点模块依赖关系
- 如何引用HTML中节点模块中的js文件
- 未定义应为节点模块的对象
- 如何在客户端javascript中需要节点模块
- 如何在节点模块中从命令行运行函数
- 将节点模块添加到gitignore
- 使用Q节点模块时,Bluemix node.js应用程序部署失败
- 使用document.cookie将客户端javascript转换为节点模块
- 查找与锁定和更新调度相关的一个或两个节点模块
- 节点模块的可能结构
- 节点模块对象范围:在所有函数之间共享一个对象
- 有没有一种方法可以使用javascript和节点模块(oracledb)将csv导入oracle数据库
- 单元测试节点模块与mocha,模块变量行为怪异
- 要安装依赖项的自定义节点模块
- Node.js如何将链接标记解析为节点模块
- 如何公开JS节点模块
- 如何访问节点模块中具有相对路径的文件
- 节点模块和常规javascript文件之间的区别是什么
- Npm.require可以'找不到节点模块
- 将参数传递给基于类的节点模块