You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

树莓派3上Node-RED与npm语法错误求助:无法安装SDS011节点

解决方案:Node.js版本过低导致的Node-RED及SDS011节点安装错误

问题根源

你的报错完全是因为Node.js v4.4.5版本太老,不支持现代Node.js包依赖的ES6语法特性:

  • let/const这类块级作用域声明,在非严格模式下的完整支持是Node.js 6.x之后才实现的
  • 扩展运算符...(也就是你看到的...args)属于ES6特性,Node.js 4.x对其支持不完善,而新版Node-RED依赖的fs-extra库已经在使用这个语法

分步解决办法

1. 升级Node.js到兼容版本

树莓派3上推荐安装Node.js的长期支持(LTS)版本,至少v14.x及以上(Node-RED官方推荐v16+,稳定性更好)。可以用官方脚本一键升级:

# 先卸载旧版Node.js和npm
sudo apt-get remove --purge nodejs npm -y
# 导入NodeSource的v16.x源(可替换为v18.x等更高LTS版本)
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
# 安装新版Node.js
sudo apt-get install nodejs -y
# 验证安装是否成功
node -v
npm -v

如果不想用脚本,也可以手动添加软件源后安装,不过脚本是最省心的方式。

2. 重新安装Node-RED(推荐)

旧版本的Node-RED和新Node.js可能存在兼容性问题,建议彻底重装:

# 卸载旧版Node-RED
sudo npm remove -g node-red
# 安装最新稳定版Node-RED(--unsafe-perm解决权限问题)
sudo npm install -g --unsafe-perm node-red

或者用Node-RED官方提供的树莓派专用安装脚本,它会自动适配你的系统,安装最合适的Node.js和Node-RED版本:

bash <(curl -sL https://raw.githubusercontent.com/node-red/node-red/master/packages/node_modules/node-red-installer/scripts/update-nodejs-and-nodered)

这个脚本还会帮你配置systemd服务,省去手动设置的麻烦。

3. 安装sds011空气质量传感器节点

现在Node.js版本达标了,就可以正常安装节点了:

# 进入Node-RED的用户配置目录(默认是~/.node-red)
cd ~/.node-red
# 安装sds011节点
npm install node-red-contrib-sds011

4. 重启并验证Node-RED服务

安装完成后,重启systemd服务:

sudo systemctl restart nodered
# 查看服务运行状态,确认没有报错
sudo systemctl status nodered

额外提示

  • 安装前建议先更新树莓派系统包,避免依赖冲突:sudo apt update && sudo apt upgrade -y
  • 如果安装过程中遇到权限报错,记得在npm命令后加上--unsafe-perm参数
  • 你的Node-RED流配置文件默认存在~/.node-red/flows_*.json,重装后会自动保留,不用担心丢失配置

内容的提问来源于stack exchange,提问作者Andrea Zambon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.06 15:59:06