Узел-красный пользовательский узел node_modules - PullRequest
0 голосов
/ 02 февраля 2019

Я использую узел-красный, как встроенный в мое приложение Express.js, как это https://nodered.org/docs/embedding. При встраивании, как этот узел-красный, не может загружать новые узлы из npm.

Проблема в том, что когдаопределение пользовательского dir пользователя в settings.js, например userDir: 'node-red-data/' Node-red добавляет загруженные узлы в эту папку внутри node_modules.

Итак, у меня есть две папки node_modules:

myapp/node_modules => this is containing node-red
myapp/node-red-data/node_modules => this is containing node-red extra nodes

Некоторые какnode-red не может загружать модули в сторону myapp/node-red-data/node_modules

Есть ли какие-нибудь решения?

Ответы [ 2 ]

0 голосов
/ 01 июля 2019

У меня похожая проблема.
Я использовал process.execPath

userdir = path.resolve(process.execPath,'..'); //better that __dirname; 

Поскольку директория отличается при компиляции приложения.

// Create the settings object - see default settings.js file for other options
var settings = {
    verbose: true,
    httpAdminRoot:"/admin",
    httpNodeRoot: "/",
    userDir: userdir, // problem with dir...
    flowFile: 'flows.json',
};
0 голосов
/ 13 февраля 2019

Ошибка была в файле настроек.

Мои настройки в пользовательском каталоге:

var settings = {
    httpAdminRoot: '/admin',
    httpNodeRoot: '/ap',
    nodesDir: '/nodes',
    flowFile: "flows.json",
    userDir: './data/'
}

Правильные настройки:

var path = require('path');
var dir = path.dirname(__filename);
var settings = {
    httpAdminRoot: '/admin',
    httpNodeRoot: '/ap',
    nodesDir: dir + '/nodes',
    flowFile: "flows.json",
    userDir: dir+'/data/'
}

Поэтому добавление статического пути к пользовательскому каталогуи узлы dir заставляют его работать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...