Javascript 将导入函数添加到导出函数时出现问题

Javascript 将导入函数添加到导出函数时出现问题,javascript,node.js,Javascript,Node.js,所以基本上我想要这个街区: const {someFunction} = require("/somePath"); exports.exportedFunction = (req, res) => { someFunction() } exports.exportedFunction = (req, res) => { const {someFunction} = require("/somePath"); someFunc

所以基本上我想要这个街区:

const {someFunction} = require("/somePath");
exports.exportedFunction = (req, res) => { someFunction() }
exports.exportedFunction = (req, res) => {
    const {someFunction} = require("/somePath");
    someFunction();
}
要像此块一样工作,请执行以下操作:

const {someFunction} = require("/somePath");
exports.exportedFunction = (req, res) => { someFunction() }
exports.exportedFunction = (req, res) => {
    const {someFunction} = require("/somePath");
    someFunction();
}
但不重复进口。如何防止在每次导出中重复导入?我希望有一个导入,从中我可以将该函数用于每个导出,而无需精确导入导出。这可能吗

更新:好的,有一个小的更新。我提出了一个最低要求问题,如下所示:

//index.js
const express = require("express");
const app = express();
const router = require("./router");

exports.exportableStuff = () => {
    return [1,2,3];
};
app.use("/", router);

app.listen(3000, () => {
    console.log("i am listening");
});

//router.js
const express = require("express");
const router = express.Router();
const controller = require("./controller");

router.get("/", controller.testModule);

module.exports = router;

//controller.js
const {exportableStuff} = require("./index");

exports.testModule = (req, res) => {
    console.log("it has been done");
    exportableStuff();
    res.send("<h1>hello, user</h1>");
}
进入:

并使用model.exportableStuff()调用控制器中的函数。
问题初步解决了,但若你们有更好的想法,我洗耳恭听。

根据你们的评论,我想你们可能想做以下事情

//index.js
module.exports={someFunction}
//router.js
//案例1
const{someFunction}=require(“./index.js”)
someFunction()//它会工作的
//案例2
const index=require(“./index.js”)
index.someFunction()//它会工作的
但是,如果要将someFunction导出到另一个函数,请导出
然后使用新函数,您需要这样做

//other.js
const{someFunction}=require(“./index.js”)
exports.exportedFunction=someFunction
//router.js
const{exportedFunction}=require(“./other.js”)
exportedFunction()//它会工作的

第一个选项有什么问题?当我将它从index.js导出为module.exports={someFunction},然后从导入导出函数的路由器导入时,日志显示someFunction不是一个函数,所以看起来我是以正确的方式获得它的。我将检查我的代码,然后发布和更新,因为它在第一次导入时结束,然后路由器无法从index.js的导出模块中识别所需的函数。真奇怪。其他安装的模块工作正常,但此模块不正常。