두 파일, A.js 및 B.js가 있다고 가정 해 봅시다. 둘 다이 같은 서로에 대한 참조가 필요합니다.모듈에서 가져온 형식 정보 만
A.js
import { B } from "b"
export class A {
constructor(public name: string) {}
}
let b = new B();
b.print(new A("This is a random name"));
B.js는
import { A } from "a"
export class B {
print(a: A) {
console.log(a.name);
}
}
위의 예는 현재 내가 사용하고 자바 스크립트 런타임에서 작동하지 않는 순환 참조를 작성합니다. 파일 B.js은 실제로는 실제 반출 오브젝트가 아닌 유형 정보 만 필요합니다. 형식을 A.js에서 정적 형식 검사를 원합니다. 이것이 가능한가?
'class A '를 다른 파일로 옮길 수없고'b.print (...)'를하고 싶을 때 둘 다 가져올 수 없습니까? – Aurora0001
이상인 경우 B의 인터페이스를 다른 파일에 배치하고 두 파일 모두 사용하도록 설정하십시오. – toskv
순환 의존성의 바로 그 정의입니다. 그 의존성을 깨뜨리는 것만으로 ... 'A'가 'B'를 참조해야하는 이유는 없습니다. 나머지 코드는 다른 위치로 옮기십시오. –