当我有更多的后端javascript文件时,我是否应该将node_模块放在一个单独的文件夹中?
My node js项目具有以下结构:当我有更多的后端javascript文件时,我是否应该将node_模块放在一个单独的文件夹中?,javascript,node.js,model-view-controller,Javascript,Node.js,Model View Controller,My node js项目具有以下结构: app | |-public | |-assets | |-node_modules | |-views | |-index.js 我在index.js中有很多代码。所以我决定将它们分成不同的文件,并将它们放在名为controllers的文件夹中。但是,由于模块引用的是节点_模块文件夹,而该文件夹不在控制器文件夹中,因此我得到的模块未找到 因此,将node\u modules文件夹移动到controllers文件夹中是一个好主意,还是有更好的方法来管理
app
|
|-public
| |-assets
|
|-node_modules
|
|-views
|
|-index.js
我在index.js中有很多代码。所以我决定将它们分成不同的文件,并将它们放在名为controllers
的文件夹中。但是,由于模块引用的是节点_模块文件夹,而该文件夹不在控制器
文件夹中,因此我得到的模块未找到
因此,将node\u modules
文件夹移动到controllers
文件夹中是一个好主意,还是有更好的方法来管理大量后端js文件(无论是否将其放入单个文件夹中)
如果我将节点_模块
移动到控制器
中,在以后开发应用程序时是否有可能落入陷阱?(这是一个巨大的项目,所以问)
我知道我可以通过给出require(“./controllers/module.js”)
直接将这些模块包含在index.js中,但模块本身依赖于许多节点模块。因此我需要访问节点模块。否。否。
您不需要移动节点单元模块。它将保留在项目根目录中。而且你不需要把它添加到需求中
您可能做过和不应该做的示例:
const module = require('./node_modules/mymodule');
不要那样做
那没必要。如果你移动一个文件,你将面临你现在面临的问题
node如何知道在node_模块中的何处查找模块?下面有一些文章对此进行了解释:
tl;dr:更改您的请求并删除对节点\ U模块的引用。节点将自己找到它否。否。
您不需要移动节点单元模块。它将保留在项目根目录中。而且你不需要把它添加到需求中
您可能做过和不应该做的示例:
const module = require('./node_modules/mymodule');
不要那样做
那没必要。如果你移动一个文件,你将面临你现在面临的问题
node如何知道在node_模块中的何处查找模块?下面有一些文章对此进行了解释:
tl;dr:更改您的请求并删除对节点\ U模块的引用。节点将自己找到它在哪里是
控制器
(或者控制器
?您在问题中使用了两者)?如果它是app/controller
,则其中的模块在使用app/node\u模块时应该没有问题。请张贴你的错误。(不,您绝对不应该将node_模块
移动到其他位置。它应该始终位于package.json
旁边)您应该使用有关控制器
文件夹的位置以及如何从node_模块请求库的信息更新您的问题1。在index.js中使用自己的模块:import。。。来自“./controller/mymodule”代码>2。在自己的模块中使用自己的模块:导入。。。来自“/mymodule”代码>3。使用第三方模块:导入。。。来自“某个_模块”代码>并且不要将节点\ u模块移动到任何地方。我已经更新了问题控制器在哪里(或者控制器
?您在问题中使用了这两个)?如果它是app/controller
,则其中的模块在使用app/node\u模块时应该没有问题。请张贴你的错误。(不,您绝对不应该将node_模块
移动到其他位置。它应该始终位于package.json
旁边)您应该使用有关控制器
文件夹的位置以及如何从node_模块请求库的信息更新您的问题1。在index.js中使用自己的模块:import。。。来自“./controller/mymodule”代码>2。在自己的模块中使用自己的模块:导入。。。来自“/mymodule”代码>3。使用第三方模块:导入。。。来自“某个_模块”代码>并且不要移动节点\u模块
任何地方。我已经更新了问题