文件结构的最佳实践-使用请求模块(Node.js + Express.js)

Best practice on file structure - using Request module (Node.js + Express.js)

本文关键字:js Node 模块 Express 请求 最佳 文件结构      更新时间:2023-09-26

我刚刚在我的express + node.js项目中安装了请求模块,我想知道在哪个文件夹中我应该放置我的自定义js文件,该文件将包含以下代码,基本上执行请求模块。

var request = require('request');
request('http://www.google.com', function (error, response, body) {
  if (!error && response.statusCode == 200) {
    console.log(body) // Show the HTML for the Google homepage. 
  }
})

这只是一个示例代码,我将有我自己的,可能模式代码比这,所以我假设把它放在奇怪的地方在app.js不被认为是最佳实践。

我也不确定node_module文件夹是否适合此执行目的。

在我的评论中,如果不了解应用程序的更多功能,SO社区很难规定如何构建应用程序。

但是,您问node_modules是否是执行应用程序代码的好地方…

答案是响亮的"不"。node_modules文件夹专门用于应用程序使用的模块,而不是应用程序本身。

一个典型的节点应用程序是这样的:
├── app.js
├── package.json
├── node_modules
   ├── module1
   ├── module2
   ├── etc...

一般来说,您的应用程序将在app.js中编写,当在命令行上执行npm install命令时,您的外部模块将由节点包管理器存储在node_modules中。NPM安装package.json文件中列出的包。将应用程序代码存储在node_modules中是不好的做法,因为该文件夹通常被认为可以通过NPM重新构建,并且通常被各种应用程序/开发人员删除,以使您的应用程序更具可移植性。

如果你想把你的代码分成更小的块,那么你可以要求特定的文件而不是已知的模块。

下面是一个例子:

<<p> 文件夹结构/strong>
├── app.js
├── lib
   ├── my-local-module.js
├── package.json
├── node_modules

lib/my-local-module.js

module.exports = function() {
  console.log('Hello World!');
}

app.js

var myLocalModule = require('./lib/my-local-module.js');
myLocalModule(); // Hello World!

每个程序都需要从某个地方开始。在本例中,您可以通过在命令行上运行node app.js来引导这个应用程序。然后,该代码将通过require语句本地化my-local-module.js文件。

我之前说过;我的建议是将代码保存在一个文件中,直到你觉得你的代码库已经足够大,可以保证重构和将逻辑委托给其他文件。