클래스 A
중 인스턴스를 내보내려고합니다. A
에는 A.B
의 인스턴스를 반환하는 메서드가 있습니다. 인스턴스와 정적 내부 클래스를 어떻게 든 내보낼 수 있습니까?클래스 A의 인스턴스와 중첩 된 클래스 A.B
class A {
public static B = class {}
getB(): A.B { // <- compile error
return new A.B(); // this works fine
}
}
export default new A();
export { A.B }
자바 배경에서 왔어. 당신이 볼 수있는 것처럼, 나는 전환을하기 위해 여기에서 조금 고심하고있다. 모듈 대신 무언가를해야한다고 생각하니? ...
import a from "./A";
import { A.B } from "./A";
let b: A.B = a.getB();
는 왜 다음 "내부 클래스 '만들기? –
@NitzanTomer 나는 데이터의 구조적 분리를 유지하면서 두 클래스가 실제로 함께 속한다는 것을 암시하고 싶다. –
이 접근법은 단지 당신에게 고통을 가져올 것입니다. Typescript는 이것과 매우 다르므로 같은 방식으로 생각하면 안됩니다 ... 예를 들어, 내부 클래스는 외부 클래스의 멤버에 액세스하지 않습니다. 당신은 그것을 묻어서 아무것도 얻지 못합니다. 또한 클래스가 아닌'A'의 인스턴스 만 내보내는 것이 무엇입니까? 그것은 싱글 톤입니까? –