可以手动在里面创建一个目录node_module
并在那里放置一些模块吗?
例如,我可能想创建一个名为models
inside的目录node_modules
并将我的模型放在那里,所以我可以这样做
var Person = require("models/person");
我知道它工作得很好,但如果我这样做会被认为是一种不好的做法吗?
可以手动在里面创建一个目录node_module
并在那里放置一些模块吗?
例如,我可能想创建一个名为models
inside的目录node_modules
并将我的模型放在那里,所以我可以这样做
var Person = require("models/person");
我知道它工作得很好,但如果我这样做会被认为是一种不好的做法吗?
当然,您可以将代码放在项目中任何您想要的位置,以下是我不将应用程序代码放在该文件夹中的几个原因:
node_modules
文件夹视为只读的第三方引用,这些引用不在我的控制范围内,并且来自其他地方,并且假设 NPM 存储库当时可用,我可以轻松地重新创建这些引用。models
,而不是将它埋在我没有编写的代码中。models
文件夹不与顶级文件夹中的任何其他内容冲突。唯一的例外是共享的私有包......但由于它们是共享的,我不会将它们视为我将作为应用程序的一部分进行编辑的代码。它们将作为 NPM 流程的一部分安装。
举个例子,我现在正在做的项目的结构是这样的:
+ public
- JavaScript
- styles
+ models
+ views
+ routes
+ services
+ node_modules
虽然是一个主观的答案,但我不会认为这是一种不好的做法。事实上,我通常以这种方式将一些代码分成模块,这是我不希望在 npm 上的,也不值得在 github 上放置一个私有 repo。但是,将它们当作“已发布的模块”使用是很有用的。