OOP를 기능적 언어로 강요하는 것은 아니지만 클래스의 모듈을 내보내는 피어가 무엇인지 이해하려고 애 쓰고 있습니다. 내가 찾고있는 건 이걸 부르는 것입니다. 그래서 연구를 계속할 수 있습니다. 내가 이해 한 바로는 내부 클래스에 전달되는 외부 SDK를 포함하여 모든 것을 LibIncludes에 상속받습니다. 모든 클래스가 LibIncludes로 상속하고 LibIncludes가 Object에서 상속받을 수 있도록하는 것으로 가정합니다. 내가 지금 실행하고있는 것은 언제든지 LibIncludes를 호출하려고하는 것입니다 .Handlers; 정의되지 않은 핸들러에 포함 된 함수를 실행합니다. 나는 그가이 작업을하기 위해 어떤 패턴을 적용했는지 이해할 수 없으며 ES6의 모든 것이 상속을위한 클래스간에 내보내기와 가져 오기에 대한 완전히 다른 접근법을 보여줍니다. 어떤 도움이라도 대단히 감사하겠습니다.JavaScript 클래스와 관련하여 module.exports를 이해하십시오.
// index.js
const ExternalSdk = new SDK.Function();
const HandlerService = require('./hander/handler.js');
class LibIncludes {
static compose() {
const Handler = new HandlerSvc(ExternalSdk);
return {
Handler
};
}
}
module.exports = LibIncludes;
let function = LibIncludes.sdkFunciton;
// function should be invoked and return some object
클래스 평소처럼 JS 값입니다 app.js. 그리고'module.exports'는 항상 그렇듯이 작동합니다. ES6에서는 특별한 것이 없습니다. – Bergi
이것은 끔찍합니다. *** ***은 정적 멤버만으로 클래스를 정의해야합니다. 동료는 간단한 개체 리터럴을 사용해야합니다. – Bergi