如何解决express.js中的“找不到模块”(自定义模块)错误

时间:2016-08-29 01:59:33

标签: javascript node.js express

我在控制器目录中有我的user.js文件,在服务目录里面有utility.js文件。

在user.js中,我试图访问utility.js,如下所示。

var Utility = require('./service/utility');

var express = require('express');

var router = express.Router();

node.js

引发的错误
Debugger listening on port 5858

 module.js:327

throw err;
^

Error: Cannot find module './service/utility'

  at Function.Module._resolveFilename (module.js:325:15)
    at Function.Module._load (module.js:276:25)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)

1 个答案:

答案 0 :(得分:1)

controllerservice相邻的目录是这样的吗?

+- service/
|   +- utility.js
|
+- controller/
    +- user.js

require中的相对路径将相对于当前模块进行处理。 因此,如果您的目录是这样布局的,那么您需要获得相对于user.js 的路径

var Utility = require("../service/utility");