0

我正在使用 Node 和 Express,我有一个非常初学者的问题。事实上,它是如此基础,以至于我很难为它取一个标题。我正在编写一个模块化的逻辑。它涉及一些 javascript 文件,我想将它们放在一个目录中。当我访问我的网络应用程序时,可以从 routes/index.js 访问此代码。我想要类似的东西

var foo = require('???/logic');

然后当有人加载页面时,我会调用

foo.getBar(); 

然后将它返回的内容分配给翡翠模板中使用的变量

所以我的问题是 1. 我应该把我的模块化代码目录放在哪里?节点模块?2. 这听起来像是设计快递应用程序的正确方法吗?

4

1 回答 1

0

根据我们正在讨论的代码量从下面的结构中进行选择。

A:单个 .js 文件中的单个 CommonJS 模块

  • 可以导出函数、构造函数、属性
  • 如果您导出了 30 个属性或超过 X 行代码(对我来说 X 是 300ish,对于其他人来说,他们可以使用 500ish),请转到下一个选项

B:CommonJS 模块目录,包含一个 my-module/index.js 和其他支持的 .js 文件

  • 其他模块可能需要它require('./my-module')而不知道或关心my-module目录中是 1 个 .js 文件还是多个
  • 随着逻辑的增长使用此变体
  • 松耦合。高凝聚力。

C:把你的逻辑放在它自己的 npm 模块中

  • 这使得它可以与社区以及您的内部项目共享
  • 你在这方面做得越好,对过程和工具越熟悉,你就越有可能跳过AB,只制作独立的 npm 模块
于 2013-10-10T17:54:22.980 回答