gpt4 book ai didi

node.js - 如何动态调用导入的命名空间?

转载 作者:行者123 更新时间:2023-12-04 17:06:16 25 4
gpt4 key购买 nike

我有 2 个导出文件,它们都导出具有相同名称的函数。

我可以区分这两个,因为它们会被分配到不同的命名空间。但我想动态调用命名空间,而不将名称硬编码到代码中。

//exporter1.js
function boo(params)
{
return 0;
}
module.exports.boo = boo;

//exporter2.js
function boo(params)
{
return 1;
}
module.exports.boo = boo;

//mainarea.js
var exp1 = require('./exporter1.js');
var exp2 = require('./exporter2.js');

var ns = "exp1";

global[ns].boo(params); //This doesn't work

最佳答案

导入的模块未存储在 global多变的。所以你不能用 global 访问它.你可以做类似的事情

//mainarea.js
var exp1 = require('./exporter1.js');
var exp2 = require('./exporter2.js');

var supportedModules = {
'exp1': exp1,
'exp2': exp2,
}

var ns = "exp1";

supportedModules[ns].boo(params);

关于node.js - 如何动态调用导入的命名空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57196961/

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