访问另一个 nodejs 进程的变量范围(在所需的文件中)



我被一些乍一看似乎不可能的事情困住了:

我有两个并行运行的脚本:

  • 我的应用程序服务器npm run start-server
  • 我的自动文档npm run documentation-auto

我的服务器作为一个models.js文件,它引用了一个内部带有自定义动态模型的类。

我想使用服务器进程中实例化的类访问该文件(使用应用程序服务器中的模型(


文件结构:

// user-model.js
require('models');
models.registerModel(
'user', // modelName
{ firstName: String, lastName: String } // model
);
// models.js
module.exports = class {
registerModel(name, model) {
this[name] = model;
}
}

文档自动.js(另一个进程(

// documentation-auto.js
const models = require('../../other-app/models');
console.log(Object.keys(models)) // => registerModel (but no user :( )

可能吗?我搜索了一下,但一无所获...

这两个应用程序独立运行,您不能在 2 个独立应用程序之间共享变量。对于进程间通信,有一个名为node-ipc的 npm 模块

https://www.npmjs.com/package/node-ipc

这可以满足您的需求

最新更新