我应该如何在单个项目的多个文件中要求或使用相同的模块?
How should I require or use the same module in multiple files for a single project?
我知道模块在需要时会被缓存,就像解释的那样,但是从以下方式编写好的或更少的代码以及代码的可读性方面,什么是最好的方法?
场景:
我有三个文件 A、B 和 C,它们都需要其他模块如 url
和 express
但文件 A 是我的主文件,它也需要文件 B 和C 与 url
和 express
模块一起作为模块。
- 我是否应该在每个文件(即 A、B 和 C) ?
- 我是否应该仅在主文件(即 A)中需要这些模块(即
url
和 express
)并将这些所需的模块传递给文件 B 和 C 同时需要它们,如下面的
var app = require('express'),
url = require('url),
b= require('B')(app, url),
c= require('C')(app, url);
- 还有其他好的或替代方法吗?
我真的很感激能很好地解释我如何以正确和最好的方式去做,或者什么是最佳实践。
我会说是明确的,总是需要你需要的模块,它有助于可维护性和模块化。如果您使用
b = require('B')(app, url)
有可能 B 需要模块但 A 不需要,所以你最终还是写了一些要求,并且需要记住你继承了什么,什么是新的。此外,您将无法通过模块 D 使用模块 B,后者不需要 app
和 url
.
我知道模块在需要时会被缓存,就像解释的那样
场景:
我有三个文件 A、B 和 C,它们都需要其他模块如 url
和 express
但文件 A 是我的主文件,它也需要文件 B 和C 与 url
和 express
模块一起作为模块。
- 我是否应该在每个文件(即 A、B 和 C) ?
- 我是否应该仅在主文件(即 A)中需要这些模块(即
url
和express
)并将这些所需的模块传递给文件 B 和 C 同时需要它们,如下面的
var app = require('express'),
url = require('url),
b= require('B')(app, url),
c= require('C')(app, url);
- 还有其他好的或替代方法吗?
我真的很感激能很好地解释我如何以正确和最好的方式去做,或者什么是最佳实践。
我会说是明确的,总是需要你需要的模块,它有助于可维护性和模块化。如果您使用
b = require('B')(app, url)
有可能 B 需要模块但 A 不需要,所以你最终还是写了一些要求,并且需要记住你继承了什么,什么是新的。此外,您将无法通过模块 D 使用模块 B,后者不需要 app
和 url
.