конструктор класса es6 с аргументом или без него? - PullRequest
1 голос
/ 10 октября 2019

Класс es6 определен как таковой;

class Sample {

  constructor(options) {
    options = options || {
      default: 10,
      var: 15
    };
  }

  one(argc, argv) {
    return 1
  }

  two(argc, argv) {
    return 2
  }
}

// I would like to use the 'new' keyword here vs. elsewhere
module.exports = function(options) {
  return new Sample(options);
};

Я использую функцию для экспорта класса, поэтому включение может использоваться без ключевого слова new.

Однако из-заэто я не могу использовать какие-либо функции из класса, когда вызывается как const x = require("./sample.class"); против const x = require("./sample.class")(opts);.

Я в замешательстве, но я ожидаю, что доступ к x.one() или x.two() для обоих вызовов.

...