johnny-dreamguns
10/7/2019 - 9:37 AM

Factory

// FACTORY

//myFactory.js
const Task = require('./task');
const Task2 = require('./task2');

const myFactory = function() {
  this.getTask = function(taskType) {
    switch(taskType){
      case 'task': 
        return new Task({ name: 'name 1' });
      case 'task2':
        return new Task2({ name: 'name 2' });
    }
  }
};

module.exports = new myFactory;

//main.js
const myFactory = require('./myFactory');
const task2 = myFactory.getTask('task2');
task2.save();