如何将本地开发(自定义开发)的节点上传到 node-red 平台

1.如何安装

准备

1. 首先找到node-red 的安装路径:
node-red 一般是全局安装,使用 npm config get prefix 查看 npm 全局安装路径(使用 npm config set prefix "<path>" 设置全局安装路径);

  	 PS D:\Program Files\nodejs\node_global> npm config get prefix
   	 D:\Program Files\nodejs\node_global


 2. 完整且正确的本地开发节点文件:
     提示:本地节点如何开发-->https://www.jianshu.com/p/e803dd1a624b
     如下所示为我个人开发的 node-red 节点:
         D:\messageflow\nodetest\104and101 的目录
         2022/08/22  15:37    <DIR>          101to104
         2022/08/22  15:37    <DIR>          104to101
         2022/08/22  15:37    <DIR>          common
         2022/08/22  14:20             3,554 cs104_server.js
         2022/08/22  15:37    <DIR>          iec101
         2022/08/22  15:37    <DIR>          iec104
         2022/08/22  17:44             5,689 main.html            必须必须必须
         2022/08/23  14:14               514 main.js              必须必须必须
         2022/08/22  17:44               262 node.js
         2022/08/22  15:37    <DIR>          node_modules
         2022/08/23  10:49           847,245 node_modules.zip
         2022/08/22  17:21             9,186 package-lock.json
         2022/08/22  17:44               405 package.json         必须必须必须

安装[方法一]

 1. 进入 全局安装路径 node_global 中,按 shift+点击,打开 powershell 窗口
 2. 执行如下命令(节点目录不要带有特殊字符!!)
 # --no-save
 # npm 默认将模块作为依赖项目添加到 package.json 文件中,
 # 使用了 no-save 后 package.json 中将不带有任何标志。
 PS D:\Program Files\nodejs\node_global> npm install D:\messageflow\nodetest\104and101\ --no-save

 added 1 package in 3s

 3. 重启 node-red,打开 node-red 主页,在 设置--> 控制板 --> 节点中查看有没有安装的节点。
    (没有的话打开 f12 调试窗口,看 控制台有无报错;或者点击节点看有无报错),
    或者 npm ls 查看安装成功与否。

安装[方法二]

  1. 先找到所有 node-red 节点的安装目录:

    页面设置 --> 节点管理 --> 安装 --> 随机安装一个节点(这里安装 nbr-clipboard,名字复杂,不会重复,容易找)。

  2. 全局搜索 nbr-clipboard 路径

    在这里插入图片描述

  3. 进入该路径,将自定义节点重命名为 node-red-xxx 并复制进去。

    C:\Users\minge\.node-red\node_modules 的目录
    
    2022/08/26  16:50    <DIR>          nbr-clipboard
    2022/08/26  16:50    <DIR>          node-red-iec104and101  // 这是我们自定义的
    
  4. 重启 node-red ,可以正常使用节点。

注意:

  • 默认的 node-red 节点安装目录一般是 “C:\Users\minge.node-red\node_modules”。

  • 此方法有一个缺点,卸载不掉。如果想要更新节点可以直接覆盖原节点文件。

2.如何卸载

# 查看已安装的节点(全局)
PS D:\Program Files\nodejs\node_global> npm ls
node_global@ D:\Program Files\nodejs\node_global
+-- node-red-iec104and101@1.0.0 extraneous -> .\..\..\..\messageflow\nodetest\104and101
`-- node-red@3.0.2

# 卸载  npm uninstall -g  node-red-iec104and101
PS D:\Program Files\nodejs\node_global> npm uninstall -g  node-red-iec104and101

removed 1 package, and audited 1 package in 584ms

found 0 vulnerabilities

# 检验:再次查看==>已经找不到自定义节点的依赖;
# 出现问题:执行 npm ls 命令查看是否删除依赖,报错。
# 解决问题:删除 node_global 下的 package.json 中的node-red-iec104and101 依赖既可解决 npm ls 报错的问题。
# 报错原因:出现这种情况的原因是安装的时候没有加 --no-save 选项
PS D:\Program Files\nodejs\node_global> npm ls
node_global@ D:\Program Files\nodejs\node_global
+-- UNMET DEPENDENCY node-red-iec104and101@file:../../../messageflow/nodetest/104and101
`-- node-red@3.0.2

npm ERR! code ELSPROBLEMS
npm ERR! missing: node-red-iec104and101@file:../../../messageflow/nodetest/104and101, required by node_global@

npm ERR! A complete log of this run can be found in:
npm ERR!     D:\Program Files\nodejs\node_cache\_logs\2022-08-23T06_24_11_759Z-debug-0.log
PS D:\Program Files\nodejs\node_global>

# 删除 package.json 后正常执行。
PS D:\Program Files\nodejs\node_global> npm ls
node_global@ D:\Program Files\nodejs\node_global
`-- node-red@3.0.2

3.如何在运行页打印日志

console.log();

console.error();
在这里插入图片描述

4.如何查看本地 node-red 全局安装在何处

npm config get prefix

5.报错

因为 function(RED) 中的 RED 写成了 MSGFOW,RED 好像不可自定义。

6.- -save 解释

 --no-save  当你不带任何安装标志时,npm 默认将模块作为依赖项目添加到package.json文件中。如果你想避免这样,你可以使用no-save,这样安装

 --save-prod  安装一些包到生产环境依赖下面。

 --save-dev   开发环境下的依赖安装,你可以用-D代替–save-dev。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值