使用ES6类

时间:2016-11-11 12:19:04

标签: javascript node.js mongodb mongoose

var mongoose = require('mongoose');
var Schema = mongoose.Schema;

let modelSchema = new Schema({createdAt: {type: Number}}, { strict: false});

modelSchema.pre('save', function(next) {
  this.createdAt = new Date().getTime() - 30000;
  next();
});

class Messages {

  constructor() {

    this.model = mongoose.model('messages', modelSchema, 'messages');
  }

  getAllMessages(params, cb) {
    // .... some code
    // .... uses this.model.find()
  };

  insertMessage(params, cb) {
    // .... some code
    let newMessage = new this.model(newObj);
    // uses newMessage.save()
  }
}

export default Messages;

这是我的一个mongoose模型示例。将模型导出为this.model

这样的单例时,export default new Messages()似乎会导致大量内存泄漏

我进一步优化了导出类似上面主代码的类,并在需要时实例化。看起来它仍然会造成大量内存泄漏。

关于我在这里做什么的任何意见以及我该如何改进?

0 个答案:

没有答案