안녕하세요 여러분,
저는 Application Builder로 작업하고 있으며 많은 모듈 창과 스크립팅이 필요합니다. 다른 스크립팅 네임스페이스로 변수를 "보내기" 또는 "푸시"/"풀"하는 방법이 있는지 궁금합니다.
지금까지 Application 네임스페이스에서 대부분의 변수를 정의했지만 매우 바빠지기 시작했으며 필요에 따라 Application 네임스페이스에서 변수가 참조되는 관련 모듈 아래에 스크립트를 두는 것을 선호합니다. 한 가지 해결책은 전역 변수를 정의하는 것이지만 변수 이름 지정과 관련된 잠재적인 미래 문제가 걱정됩니다. 이 문제를 해결할 수 있는 방법이 있습니까? 또는 "Names Default to Here" 또는 이와 유사한 것을 구성하여 내가 정의한 변수가 Application 네임스페이스로 기본 설정되고 모든 모듈 스크립트에서 참조할 수 있도록 구성하는 방법이 있습니까?
모든 통찰력에 감사드립니다!
안녕 @EstelleS -
모든 애플리케이션 스크립트(애플리케이션 수준 또는 모듈 수준) 내에서 다음을 사용하여 애플리케이션 네임스페이스에 액세스할 수 있습니다.
appNS = thisApplication<<Get Namespace;
이를 통해 애플리케이션 범위에서 변수 값을 명시적으로 설정/가져올 수 있어야 합니다.
모듈 스크립트 내의 범위가 지정되지 않은 변수는 기본적으로 주어진 모듈 내에서만 볼 수 있습니다.한 모듈이 다른 모듈 내의 변수에 액세스해야 하는 경우 첫 번째 모듈에는 두 번째 모듈에 대한 참조가 있어야 합니다.예를 들어, module1이 다음을 사용하여 module2의 인스턴스를 생성하도록 할 수 있습니다.
module2 << CreateInstance(thisModuleInstance);
'thisApplication' 및 'thisModuleInstance' 변수는 애플리케이션 및 (현재) 모듈 인스턴스를 참조하는 자동 변수입니다.이제 module2 인스턴스는 전달된 모듈의 네임스페이스에 액세스하여 module1 인스턴스의 변수에 액세스할 수 있습니다.
OnModuleLoad({callingModule},
ns = callingModule << Get Namespace;
);
도움이 되기를 바랍니다.
-단