이것은 인위적인 예를 들어, 오히려 전역에 밀어 것보다, 여러 클래스에서 사용되는 변수를 둘러싸 모듈 범위를 사용할 수 있습니다.
module MyModule {
var x: number = 5;
export class FirstClass {
doSomething() {
x = 10;
}
}
export class SecondClass {
showSomething() {
alert(x.toString());
}
}
}
var a = new MyModule.FirstClass();
a.doSomething();
var b = new MyModule.SecondClass();
b.showSomething();
동일한 변수를 사용하는 여러 가지 일반적인 규칙은 모두 여기에 적용됩니다. 호출 코드에서 특정 이벤트 순서를 적용하지 않으려 고합니다. 당신은 정적 그 속성을 정의하기 위해, 다음과 같이 쉽게 액세스 할 수 있습니다 필요
var MyModule;
(function (MyModule) {
var x = 5;
var FirstClass = (function() {
function FirstClass() {
}
FirstClass.prototype.doSomething = function() {
x = 10;
};
return FirstClass;
})();
MyModule.FirstClass = FirstClass;
var SecondClass = (function() {
function SecondClass() {
}
SecondClass.prototype.showSomething = function() {
alert(x.toString());
};
return SecondClass;
})();
MyModule.SecondClass = SecondClass;
})(MyModule || (MyModule = {}));
var a = new MyModule.FirstClass();
a.doSomething();
var b = new MyModule.SecondClass();
b.showSomething();
여기서 CANVAS_WIDTH의 값을 설정 하시겠습니까? –
은 Bullet 클래스를 사용하여 모듈을 가져 오는 게임 클래스입니다. GameObjects = module ("GameObjects") – Nikos
Game 클래스에 CANVAS_WIDTH가 있으며 Bullet 클래스에 액세스해야합니다. 내가 맞습니까? –