gpt4 book ai didi

javascript - Node.js 从实例中获取模块名称

转载 作者:行者123 更新时间:2023-11-30 00:16:37 26 4
gpt4 key购买 nike

在我的 Node.js 应用程序中,在我将所有模块引入我的 server.js 之后,我将它们的实例传递到我的函数中。我的函数需要弄清楚传递的是哪个模块,它会调用相应的文件。

我尝试通过以下方式获取模块名称,但无法完成。

有没有办法提取模块名称?也可以是对象名。

这是我的服务器js文件

var less = require("less");
var express = require("express");
var path = require('path');
var MyApp = require("./LocalModules/MyApp.js");
MyApp.InitializeAll([less, express]);

这是我需要解析模块名称的地方。

exports.InitializeAll = function (modules) {
for (var i = 0; i < modules.length; i++) {
var currentModule = modules[i];
var localModuleName = "MyApp_" + currentModule.constructor.name + ".js";
var appModule = require(localModuleName);
appModule.Initialize(currentModule);
};

}

最佳答案

为什么不将模块作为一个对象传递,这样你就可以获得 key

MyApp.InitializeAll({less : less, express : express});

然后做

exports.InitializeAll = function (modules) {

for (var module in modules) {

var currentModule = modules[module];
var localModuleName = "MyApp_" + module + ".js";
var appModule = require(localModuleName);

appModule.Initialize(currentModule);
};

}

关于javascript - Node.js 从实例中获取模块名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34468611/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com