TypeError: Produto is not a constructor
at exports.create (C:\Users\mathe\Documents\TESTES\todoList\back-end\src\controllers\produtos.controller.js:18:4)
at Layer.handle [as handle_request] (C:\Users\mathe\Documents\TESTES\todoList\back-end\node_modules\express\lib\router\layer.js:95:5)
at next (C:\Users\mathe\Documents\TESTES\todoList\back-end\node_modules\express\lib\router\route.js:137:13)
at Route.dispatch (C:\Users\mathe\Documents\TESTES\todoList\back-end\node_modules\express\lib\router\route.js:112:3)
at Layer.handle [as handle_request] (C:\Users\mathe\Documents\TESTES\todoList\back-end\node_modules\express\lib\router\layer.js:95:5)
at C:\Users\mathe\Documents\TESTES\todoList\back-end\node_modules\express\lib\router\index.js:281:22
at Function.process_params (C:\Users\mathe\Documents\TESTES\todoList\back-end\node_modules\express\lib\router\index.js:335:12)
at next (C:\Users\mathe\Documents\TESTES\todoList\back-end\node_modules\express\lib\router\index.js:275:10)
at Function.handle (C:\Users\mathe\Documents\TESTES\todoList\back-end\node_modules\express\lib\router\index.js:174:3)
at router (C:\Users\mathe\Documents\TESTES\todoList\back-end\node_modules\express\lib\router\index.js:47:12)"produtos构造函数“:
exports.create = (req, res) => {
const new_produto = new Produto(req.body);
if(req.body.constructor === Object && Object.keys(req.body).length ===0) {
res.status(400).send({error: true, message: "Please provide all required field"});
} else {
Produto.create(new_produto, (err, Produto) => {
if(err) res.send(err);
res.json({
error: false,
message: "Produto added sucefull",
data: Produto
});
});
}
}发布于 2020-10-19 04:26:35
您必须更改Produto的定义。
从这里开始
const Produto = () => { ... }
Produto.create = (newProd, result) => { ... }到这个
function Produto() { ... }
Produto.prototype.create = function (newProd, result) { ... }这将创建一个带有create方法的构造函数,而箭头函数不创建构造函数,并且不是创建方法的最佳方法,因为它不保留this上下文。
https://stackoverflow.com/questions/64417208
复制相似问题