首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >节点红色自定义节点项目搜索路径

问节点红色自定义节点项目搜索路径
EN

Stack Overflow用户
提问于 2022-02-18 20:40:23
回答 1查看 261关注 0票数 1

我使用一个相当标准的节点红色项目结构来开发自定义节点:

代码语言:javascript
复制
- <myproject>
   - examples
      - example.json
   - nodes
      - node1.html
      - node1.js
   - libs
      - custom_lib (a custom node lib used by nodes)
         ....
   - package.json

我的package.json包括:

代码语言:javascript
复制
  ...
  "node-red": {
     "nodes": {
         "node1": "nodes/node1.js"
     }
  },
  "files": [
     "nodes"
     "libs"
  ],
  "scripts": {
     "debug": "set DEBUG=express:* & nodemon node_modules/node-red/red.js --userDir ./userdata --flowFile ./examples/example.json"
  },
  dependencies: {
     ....
  }

要在本地安装环境,我正在项目中运行:npm install .。它使用所有依赖项创建node_modules。

但是当我运行npm run debug时,节点红色并没有找到本地模块:

代码语言:javascript
复制
18 Feb 14:32:27 - [info] Waiting for missing types to be registered:
18 Feb 14:32:27 - [info]  - node1

除非我手动创建一个符号链接:

代码语言:javascript
复制
ln -s <path_to_myproject> ./node_modules/<module_name>

是否有正确的方法来安装/构造项目,这样我就不需要添加这个手动步骤了(也就是说,我希望通过运行npm install ...来创建一个Docker容器)

EN

回答 1

Stack Overflow用户

发布于 2022-02-18 21:25:58

如果运行以下命令:

代码语言:javascript
复制
npm install /path/to/your/custom_node

在Node-RED UserDir ( .userDir)中,它将为您创建正确的符号链接( .userDir/node_modules目录中的节点名称)。

猜你的结构应该是npm install ..

编辑:

根据注释并记住npm的工作方式,您将需要如下目录结构:

代码语言:javascript
复制
project-root
 - userDir
 - node
    - libs
      - lib.js
    - nodes
      - node1.js
      - node1.html
    - examples
      - example.json
    - package.json

然后,可以让npm从node目录中正确地创建指向userDir目录的符号链接。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71179603

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档