这是我的server.js,可在其中运行代码以通过localhost:7000初始化服务器。我运行的路线是product.js:
产品路线:
const express = require('express');
const router = express.Router();
const Pro = require('../model/Product');
router.get('/', (req, res) => {
Pro.find()
.sort({ entrydate: -1 })
.then(product => res.json(product));
});
router.post('/product', ( req, res ) => {
res.send('Posting a response')
});
module.exports = router;
哪个错误:
TypeError:Product.route不是函数
产品型号:
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const ProductSchema = new Schema({
// Objects and Properties are here
});
const Product = mongoose.model('products', ProductSchema);
module.exports = { Product };
如何摆脱困境?
答案 0 :(得分:4)
您要在对象中导出<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.10.19/css/jquery.dataTables.min.css">
<script type="text/javascript" src="https://cdn.datatables.net/1.10.19/js/jquery.dataTables.min.js"></script>
<script type="text/javascript">
$(document).ready( function () {
$('#userlist').DataTable();
} );
</script>
:
var oc = $('#chartContainerId').orgchart({
...
'initCompleted': function() {
oc.hideChildren($('#chart-container').find('.node:first'));
}
});
因此,当您尝试查找产品时,您正在做的事情是:
Product
这可能是您不想要的。相反:
module.exports = { Product };
或代替创建一个{ Product }.find();
变量:
module.exports = Product;
两者都应仅导出Product
模型并解决问题。
答案 1 :(得分:0)
了解有关使用JavaScript进行销毁的信息。 您可以通过
const {Product} = require('../model/Product'); //recommended
或
const any_variable_name = require('../model/Product').Product;
module.exports = variable_name
也有帮助,但是如果要导出多个变量,则必须多次写整行。而module.exports = {v1,v2,v3...vn}
更具可读性
答案 2 :(得分:0)
在您的产品路线中使用 async