【问题标题】:How to export mongoose schema using typescript?如何使用打字稿导出猫鼬模式?
【发布时间】:2020-10-29 03:57:22
【问题描述】:

我已经为用户集合创建了猫鼬模式,现在我试图在控制器中导入它显示错误no exported member 'User'. Did you mean 'IUser'? 如何解决这个问题?

user.model.ts

import mongoose, { Schema } from 'mongoose';

export interface IUser extends mongoose.Document {
  firstName: string,
  lastName: string,
  userName: string 
  password: string 
}
 const UserSchema: Schema = new Schema({
    firstName: {
        type: String,
        required: true
      },
    lastName: {
        type: String,
        required: true
      },
   userName: {
    type: String,
    required: true
  },
   password: {
    type: String,
    required: true
  }
});

export default mongoose.model('User', UserSchema);

user.controller.ts

import { Request, Response } from 'express';
import { User } from './user.model'

【问题讨论】:

    标签: javascript node.js typescript mongoose


    【解决方案1】:

    对于打字稿:

    export interface IUser extends mongoose.Document {
      name: string; 
      somethingElse?: number; 
    };
    
    export const UserSchema = new mongoose.Schema({
      name: {type:String, required: true},
      somethingElse: Number,
    });
    
    const User = mongoose.model<IUser>('User', UserSchema);
    export default User;
    

    【讨论】:

    • 这看起来像是一个非常重复的任务
    猜你喜欢
    • 2014-02-15
    • 2017-06-30
    • 2016-04-01
    • 2022-01-08
    • 2017-01-20
    • 2018-10-09
    • 2016-08-28
    • 2016-02-05
    • 2020-05-11
    相关资源
    最近更新 更多