类型错误:无法读取 Nodejs 中未定义的属性“post”
TypeError: Cannot read property 'post' of undefined in Nodejs
我收到以下错误:
app.post('/api/assignments/user', createUser);
^
TypeError: Cannot read property 'post' of undefined
at Object.<anonymous>
at Module._compile (module.js:435:26)
at Object.Module._extensions..js (module.js:442:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:311:12)
at Module.require (module.js:366:17)
at require (module.js:385:17)
at module.exports
at Object.<anonymous>
为此:
module.exports = function(app, userModel) {
"use strict";
app.post('/api/assignments/user', createUser);
app.get('/api/assignments/user', findUsers);
app.get('/api/assignments/user/:id', findUserById);
app.put('/api/assignments/user/:userId', updateUserById);
app.delete('/api/assignments/user/:userId', deleteUserById);
function createUser(req, res) {
var newUser = userModel.createUser(req.body);
res.json(newUser);
}
function findUsers(req, res) {
if (req.query.username) {
if (req.query.password) {
findUserByCredentials(req, res);
} else {
findUserByUsername(req, res);
}
} else {
var users = userModel.findAllUsers();
res.json(users);
}
}
function findUserById(req, res) {
var userId = parseInt(req.params.id);
var user = userModel.findUserById(userId);
res.json(user);
}
function findUserByUsername(req, res) {
var username = req.query.username;
var user = userModel.findUserByUsername(username);
res.json(user);
}
function findUserByCredentials(req, res) {
var credentials = {
username: req.query.username,
password: req.query.password
};
var user = userModel.findUserByCredentials(credentials);
res.json(user);
}
function updateUserById(req, res) {
var userId = parseInt(req.params.id);
var newUser = userModel.updateUser(userId, req.body);
res.json(newUser);
}
function deleteUserById(req, res) {
var userId = parseInt(req.params.id);
userModel.deleteUser(userId);
res.send(200);
}
}();
编辑:它正在从此文件调用:
module.exports = function (app) {
"use strict";
var userModel = require("./models/user.model.js");
var formModel = require("./models/form.model.js");
require("./services/user.service.server.js")(app, userModel);
require("./services/form.service.server.js")(app, formModel);
require("./services/field.service.server.js")(app, formModel);
};
我不明白为什么我要为此TypeError
。
你最后通过}()
调用该函数function(app, userModel) {...
。它什么也不返回。所以,你会undefined
Module._compile
.
在
开始使用"app"之前,您需要确保执行类似操作
var app = express();
相关文章:
- 将对象作为参数传递后的未定义属性
- 检查链接对象形式中未定义属性的最佳实践是什么
- PhantomJS中的evalute内部未定义属性
- 访问数字类型的未定义属性
- 如何处理未定义属性的未定义属性 javascript 类型错误
- 返回未定义属性的脚本
- 类型错误:无法读取 ng-repeat 的未定义属性
- JavaScript-Disqus如何处理其“;disqus_config”;包含未定义属性的函数
- 是对HTMLElement#样式的未定义属性的赋值的返回值,保证与赋值相同
- 最好检查未定义属性或设置为空
- 如何解决这个未定义属性的node.js错误?
- 如何在JavaScript中挽救对象的未定义属性?
- AngularJS和PHP -注意:未定义属性:stdClass
- 主干模型删除未定义属性
- if else子句中未定义对象的未定义属性
- Javascript数组问题:无法读取未定义属性
- 当尝试使用未定义属性进行筛选时,Lodash将排除项
- 在Javascript数组的中途未定义属性
- Knockout arrayForEach未定义属性
- javascript中未定义属性的简写,初始化和赋值属性