1
타이핑을 만들고자하는 기존 Javascript 프레임 워크를 가정하십시오. 그것은 일부 구성원이 생성자를 통해 /에 의해 생성되어 전달되도록 선언 파일에선언 파일에 mixins 설명하기
// File: src/lib/a.js
function A() {
this.isA = true;
this.type = 'a';
}
module.exports = A;
// File: src/lib/b.js
var A = require('./a');
var plugin = require('./plugin');
function B() {
A.call(this);
this.isB = true;
this.type = 'b';
plugin(this);
}
B.prototype = object.create(A.prototype);
B.prototype.constructor = B;
module.exports = B;
// File: src/lib/plugin.js
function plugin(obj) {
obj.doSomethingFancy = function() {
// ...
}
}
module.exports = plugin;
어떻게 기술 할 것 B
: 자바 스크립트 코드는 Node.js를 모듈, 프로토 타입 상속 및 유지 mixin을 사용?
이 질문은 구현에 관한 것이 아니라 주위 선언에 관한 것입니다. 또한 인수를 위해 하위 클래스가 상위 생성자를 호출하지 않기로 결정할 수도 있다고 가정합니다. – ciss
@ ciss 저는 회원들이 생성자에 의해 생성된다는 사실을 전달하는 방법을 알지 못합니다. 멤버가 정의되지 않았을 가능성을 전달하고 싶다면'isA '와 같이'?'접미사를 붙이십시오. 파생 타입이 호출하는 기본 유형 생성자가 아니라면 TS 오류가 발생하지만이 값이 라이브러리 정의 인 경우 외부 라이브러리의 오류를 무시하도록 컴파일러에 지시 할 수 있습니다. –