【发布时间】:2016-06-14 00:34:08
【问题描述】:
我正在使用 node.js 和 typescript@1.7.5、express@4.13.3、mongoose@4.3.7 和 mongodb@3.2.0
我得到编译错误:
TS2345:'(error: any, document: any) => void' 类型的参数不可分配给'(err: any) => void' 类型的参数。
在线:(error, document) => {
即使出现此编译错误,运行时一切正常。
我该如何解决这个错误?
import express = require("express");
import bodyParser = require('body-parser');
import mongoose = require("mongoose");
import contactListModel = require("./contactlistSchema");
var contact = contactListModel.contact;
export function removeOne (req: express.Request, res: express.Response) {
var id = req.params.id;
console.log("delete one contact in database with id: " + id);
contact.remove(
{_id: new mongoose.Types.ObjectId(id)},
(error, document) => {
if(error){
console.log(error);
res.sendStatus(500);
} else {
console.log(document)
res.jsonp(document);
}
}
)
}
contactlistSchema.ts
import mongoose = require("mongoose");
export var contactlistSchema = new mongoose.Schema({
id: String,
name: String,
email: String,
number: String,
type: String
});
export interface IContactList extends mongoose.Document{
id: string;
name: string;
email: string;
number: string;
type: string
}
export var contact = mongoose.model<IContactList>("contact", contactlistSchema);
【问题讨论】:
标签: node.js mongodb express mongoose typescript