[英]refers to a value, but is being used as a type here
I am new in typescript and node.js and also I am Trying to use typescript and node.js I create a model with mongoose and import it to my users.service.ts file but when I use to get this error CreateUserDto' refers to a value but is being used as a type here. Did you mean 'typeof CreateUserDto'?
CreateUserDto' refers to a value but is being used as a type here. Did you mean 'typeof CreateUserDto'?
我创建了一个名为 users.ts 的文件,这是我的 model 并且还创建了一个名为 users.service.ts 的文件,您可以在下面找到这些文件的代码,请帮助我,我可以修复错误,非常感谢。
错误图像Model:users.ts
import * as mongoose from 'mongoose';
// import IUser from "../interface/users"
import { Schema, Document } from 'mongoose';
export interface IUser extends Document {
firstName: String,
lastName: String,
email: String,
password: String
}
const UserSchema: Schema = new Schema({
firstName: {
type: String,
required: true
},
lastName: {
type: String,
required: true
},
email: {
type: String,
required: true
},
password: {
type: String,
required: true
}
}, {
timestamps: true
});
export default mongoose.model<IUser>('User', UserSchema);
users.service.ts
import UsersDao from '../daos/users.dao';
import { CRUD } from '../../common/interfaces/crud.interface';
import CreateUserDto from "../model/users";
import { PutUserDto } from '../dto/put.user.dto';
import { PatchUserDto } from '../dto/patch.user.dto';
class UsersService implements CRUD {
async create(resource: CreateUserDto) {
return UsersDao.addUser(resource);
}
async deleteById(id: string) {
return UsersDao.removeUserById(id);
}
async list(limit: number, page: number) {
return UsersDao.getUsers();
}
async patchById(id: string, resource: PatchUserDto) {
return UsersDao.patchUserById(id, resource);
}
async readById(id: string) {
return UsersDao.getUserById(id);
}
async putById(id: string, resource: PutUserDto) {
return UsersDao.putUserById(id, resource);
}
async getUserByEmail(email: string) {
return UsersDao.getUserByEmail(email);
}
}
export default new UsersService();
CreateUserDto
是mongoose
model,这不是 typescript 的有效类型描述符。 您可以在此处阅读所有有效的 ts 类型。
您要做的是使用您创建的IUser
界面,如下所示:
async create(resource: IUser) {
return UsersDao.addUser(resource);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.