尝试扩展默认后端时出错"Cannot find module 'errors.server.controller.js'"



我想添加新的代码到我的后端,这将把一些数据到MongoDB集合。我决定在core.server.controller.js中这样做,因为我的应用程序将非常简单,我不需要为此创建一个新模块。所以我打开/app/controllers/users/users.profile.server.controller.js,一个mean。js内置控制器,复制

var _ = require('lodash'),
errorHandler = require('../errors.server.controller.js'),
mongoose = require('mongoose'),
passport = require('passport'),
User = mongoose.model('User');

core.server.controller.js文件提供猫鼬和其他东西。然后我从errorHandler require参数中删除了../,并将猫鼬模型名称更改为我自己的,我之前创建的。

但是当我想在控制台启动这个应用程序时,我得到一个错误:

Error: Cannot find module 'errors.server.controller.js'
at Function.Module._resolveFilename (module.js:336:15)
at Function.Module._load (module.js:278:25)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object.<anonymous> (/Users/developer2/baca/app/controllers/core.server.controller.js:7:17)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at module.exports (/Users/developer2/baca/app/routes/core.server.routes.js:5:13)
at /Users/developer2/baca/config/express.js:118:35
at Array.forEach (native)
at module.exports (/Users/developer2/baca/config/express.js:117:49)
at Object.<anonymous> (/Users/developer2/baca/server.js:24:38)

那么我该如何解决这个问题呢?

您需要errors.server.controller.js,但是路径错误。

你可以使用相对于你的应用程序根目录的文件路径,也可以使用你需要的文件(core.server.controller.js):

解决方案1:相对于应用程序根目录的路径(为了一致性起见首选,因为MEAN.js在其他js文件中使用path来表示require):

你可以使用节点path模块来帮助你这样做:

var path = require('path),
    errorHandler = require(path.resolve('./modules/core/server/controllers/errors.server.controller.js'));

请注意,文件路径是相对于你的应用程序的根目录,path模块将为你处理。

方案二:相对于当前文件的路径:

因为它们都在同一个目录下:

var errorHandler = require('./errors.server.controller.js');

相关内容

  • 没有找到相关文章

最新更新