I'm using node-red as embedded in my Express.js application like this https://nodered.org/docs/embedding. When embedded like this node-red cant load new nodes from npm.
Issue is that when defining custom user dir in settings.js, for example userDir: 'node-red-data/'
Node-red adds loaded nodes to this folder inside node_modules.
So I have two node_modules folder:
myapp/node_modules => this is containing node-red
myapp/node-red-data/node_modules => this is containing node-red extra nodes
Some how node-red can't load modules in side myapp/node-red-data/node_modules
Is there any solutions?
Issue was on the settings file.
My setting in user dir:
var settings = {
httpAdminRoot: '/admin',
httpNodeRoot: '/ap',
nodesDir: '/nodes',
flowFile: "flows.json",
userDir: './data/'
}
Right setup:
var path = require('path');
var dir = path.dirname(__filename);
var settings = {
httpAdminRoot: '/admin',
httpNodeRoot: '/ap',
nodesDir: dir + '/nodes',
flowFile: "flows.json",
userDir: dir+'/data/'
}
So adding static path to user dir and nodes dir makes it working