【发布时间】:2020-04-29 15:58:52
【问题描述】:
我在为我的路线创建驱动程序时遇到问题。由于某种原因,它无法识别 send() 属性。
这是我的路线代码:
const express = require('express');
const router = express.Router();
const Ctrl = require('../controllers/index');
/* GET home page. */
router.get('/', Ctrl.list());
module.exports = router;
这是我的控制器的代码:
const express = require('express');
Ctrl = {}
Ctrl.list = (req, res) => {
res.send("sended");
}
module.exports = Ctrl;
当我使用不是箭头函数的传统函数时也会发生同样的情况。
另一方面,这是我的快速配置,其中配置的路由是:
const express = require('express');
const path = require('path');
const cookieParser = require('cookie-parser');
const logger = require('morgan');
const helmet = require('helmet');
const indexRouter = require('./routes/index');
const usersRouter = require('./routes/users');
const app = express();
require('./database/config');
app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use(helmet());
app.use('/', indexRouter);
app.use('/users', usersRouter);
module.exports = app;
我收到此错误:
E:\elarchivero\api\controllers\index.js:6 res.send("send"); ^
TypeError:无法读取未定义的属性“发送” 在 Object.Ctrl.list (E:\elarchivero\api\controllers\index.js:6:8) 在对象。 (E:\elarchivero\api\routes\index.js:6:22) 在 Module._compile (internal/modules/cjs/loader.js:959:30) 在 Object.Module._extensions..js (internal/modules/cjs/loader.js:995:10) 在 Module.load (internal/modules/cjs/loader.js:815:32) 在 Function.Module._load (internal/modules/cjs/loader.js:727:14) 在 Module.require (internal/modules/cjs/loader.js:852:19) 在需要(内部/模块/cjs/helpers.js:74:18) 在对象。 (E:\elarchivero\api\app.js:7:21) 在 Module._compile (internal/modules/cjs/loader.js:959:30) [nodemon] 应用程序崩溃 - 在启动前等待文件更改...
【问题讨论】:
标签: javascript node.js express model-view-controller