上次我发现我的项目存在循环依赖问题。我解决了我的问题但是,我希望将来避免这个问题。 我想在我的所有项目中找到循环依赖项的插件并给我反馈。
示例:
档案a.js:
var functionFromA= require("./b.js");
console.log("file a", functionFromA);
module.exports = {functionFromA: functionFromA};
档案b.js:
var functionFromB = require("./c.js");
console.log("file b", functionFromB );
module.exports = {functionFromB : functionFromB };
档案c.js:
var functionFromC = require("./a.js");
console.log("file c", functionFromC );
module.exports = {functionFromC : functionFromC }
当我运行文件a.js时,我在控制台中看到:
档案c {}
文件b {functionFromC:{}}
提交{functionFromB:{functionFromC:{}}}
我找到了"循环依赖插件"在下午,但我不知道如何使用它? 可能有人有类似的问题,并找到了解决方案?
答案 0 :(得分:5)
您可以找到其他有用的工具:https://www.npmjs.com/package/madge
非常易于使用:madge --circular [directory]
为您提供位于[directory]
内的代码中的循环依赖项列表。它还可以生成图形图像。
答案 1 :(得分:0)
正如davidmpaz所建议的那样, madge 是用于处理此类问题的好工具,但它仅检测循环依赖关系,并不表示这些循环依赖关系是否会在您的应用程序中引起问题。
我制作了一个检测循环依赖项的工具,它警告您cd引起的问题。 https://www.npmjs.com/package/detect-circular-deps