require加载模块报错,
发布于 8 年前 作者 sunyoboy 9931 次浏览 来自 问答

node.js Web 目录结构如下: node.png 通过require引入模块报错如下: D:\chat\nodejs\chatdemo\TechNode>node app.js module.js:341 throw err; ^

Error: Cannot find module 'D:/chat/nodejs/chatdemo/TechNode/static/controllers’ at Function.Module._resolveFilename (module.js:339:15) at Function.Module._load (module.js:290:25) at Module.require (module.js:367:17) at require (internal/module.js:16:19) at Object.<anonymous> (D:\chat\nodejs\chatdemo\TechNode\app.js:12:19) at Module._compile (module.js:413:34) at Object.Module._extensions…js (module.js:422:10) at Module.load (module.js:357:32) at Function.Module._load (module.js:314:12) at Function.Module.runMain (module.js:447:10)

11 回复

通过以下语句引入 var controllers = require(’./static/controllers’);

首先,你得确认你的controllers文件在status文件夹下吗? 其次,你得说明你在哪个目录下的哪个文件中require的controllers文件

@imhered controllers在static目录下,实在根目录TechNode的app.js中使用require引入的,现在我通过在controllers下面加了一个package.json文件在里面写了 { “main” : “./user.js” } 现在报了其他错误。

@imhered controllers是个文件夹

你是要引用index.js?

@sunyoboy require不能加载文件夹。。。。。。

@sunyoboy 使用require-directory就可以引用文件夹了

@zeroone001 引用目录controller下的所有js文件,我看了一个demo,是引用目录的。

@i5ting 我想问一下是不是如果引用目录controllers,如下 var controllers = require(’./static/controllers’); 目录下有index.js, index.js引用了该目录下的其他文件就可以了?

@zeroone001 我想问一下是不是如果引用目录controllers,如下 var controllers = require(’./static/controllers’); 目录下有index.js, index.js引用了该目录下的其他文件就可以了?

嗯,我平常就是这么写,index.js里面引用该目录下面其它的文件

回到顶部