@JIakki

Как не повторять однаковое действие в методах?

Есть конструктор , и все методи прототипа начинаються однаково:
function DB() {
}

DB.prototype.add = function (req, res, next) {
    Token.findOne({token: req.token}, function(err, token) {
    .....
    .....
    })

}
DB.prototype.addToSource =  function (req, res, next) {
    Token.findOne({token: req.token}, function(err, token) {
    .....
    .....
    })
}

// остальние методы

module.exports = new DB;


Как не повторять одно и тоже действие?
Зарание спасибо
  • Вопрос задан
  • 199 просмотров
Решения вопроса 1
erniesto77
@erniesto77
oop, rb, py, php, js
думаю, что примерно в этом направлении действовать. Может что то упустил
function DB() {
  this.token = function(req) {
    return Token.findOne({token: req.token}, function(err, token) {
      .....
      .....
    })
  }
}

DB.prototype.add = function (req, res, next) {
   var token =  this.token(req);
}
DB.prototype.addToSource =  function (req, res, next) {
   var token =  this.token(req);
}

// остальние методы

module.exports = new DB;
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
k12th
@k12th
console.log(`You're pulling my leg, right?`);
Можно попробовать AOP.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы