mongoose-sequence的AutoIncrementFactory没有生效

mongoose-sequence的AutoIncrementFactory没有生效

"mongoose-sequence": "^5.3.1"

已经按照老师的代码进行编写

https://img1.sycdn.imooc.com/climg/628aedcc095d899e04630283.jpg

打印了一下UserSchema已经有了id这个字段 但接口没有返回

https://img1.sycdn.imooc.com//climg/628af7f109c1ed7903780204.jpg

import { Application } from "egg"

import { Schema } from "mongoose"

import * as AutoIncrementFactory from 'mongoose-sequence'


export interface UserProps {

    username: string;

    password: string;

    email?: string;

    nickname?: string;

    picture?: string;

    photoNumber?: string;

    createdAt: Date;

    updatedAt: Date;

}


function initUserModel(app: Application) {

    const AutoIncrement = AutoIncrementFactory(app.mongoose)

    const UserSchema = new Schema({

        username: { type: String, unique: true, required: true },//unique 唯一性  required必须输入

        password: { type: String, required: true },

        email: { type: String },

        nickname: { type: String },

        picture: { type: String },

        photoNumber: { type: String },

    }, {

        timestamps: true /*自动给更新时间和创建时间*/,

        toJSON: {//定义方法 可以直接拿到返回对象使用

            transform(_doc,ret) {

                delete ret.password

                delete ret.__v

            }

        }

    })

    UserSchema.plugin(AutoIncrement, { inc_field: 'id', id: 'users_id_counter' })

    // return app.mongoose.model<UserProps>('User', UserSchema)

    return app.mongoose.model<UserProps>('User', UserSchema);

}


export default initUserModel;


尝试过的解决方式:

1.删除node_modules和package-lock.json重新npm install

2.关闭vscode重启

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
慕后端7439710 2022-10-13 23:38:22

这里视频里写法:

import * as AutoIncrementFactory from 'mongoose-sequence';


改成下面写法就能解决问题,这里好坑人


import AutoIncrementFactory from 'mongoose-sequence';


张轩 2022-05-24 09:01:48

同学你好

请你把 源代码(git)发一下吧 我在本地帮你看看 谢谢

  • 提问者 慕设计9514886 #1

    解决了老师 过了很久重启了vscode自己就可以了

    2022-05-24 09:51:02
  • keep7677850 回复 提问者 慕设计9514886 #2

    我也遇到这个问题了删了node_module package.json.lock ,重启无数次, npm install  yarn install 还是不行

    2022-08-07 10:02:23
  • 老师我也遇到这个问题,还没解决。 我的git 地址是 https://gitee.com/keepzc/keep-lego-backend

    2022-08-07 10:40:29
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师