[英]Node.js: how to resolve a circular dependency
我知道這個問題已被多次問過,但我的情況很具體:
我有三個文件,一個controller.js
, router.js
和一個app.js
,
router.js
導入controller.js
, app.js
導入router.js
我需要從app.js
導入一些東西到controller.js
,我該怎么做?
您可能最好將代碼重組為不需要它。 也許創建第三個 class 使用其他兩個來完成你需要的,如果你必須在app.js
中使用 function 你可以這樣做:
在要求您應該導出express()
和functions
之前
應用程序.js
const express = require("express");
const func = () => {
console.log("I'm in App");
};
var exportFiles = module.exports = {
app: express(),
func: func,
};
var { app } = exportFiles;
const fs = require("fs");
const path = require("path");
const bodyParser = require("body-parser");
app.listen(8080, () => {
console.log("server port is 8080")
})
控制器.js
const {func} = require('../app');
當您在 controller 中調用func()
時,結果為:
func() // I'm in App
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.