모든 코드가 하나의 파일에 포함 된 자바 스크립트 애플리케이션을 만들었습니다. 응용 프로그램이 꽤 많이 자랐고 여러 파일로 분할 할 때가되었다고 생각하지만이 작업을 수행하는 방법을 파악하는 데 어려움을 겪고 있습니다. 나는 문제가 나는 다음과 같은 템플릿을 사용하는 응용 프로그램을 구축하기로 결정 방법에있다 생각 :어떻게하면 자바 스크립트 응용 프로그램을 여러 파일로 나눌 수 있습니까?
var myApp = function(){
//there are several global variables that all of the modules use;
var global1, global2, module1, module2;
global1 = {
prop1:1
};
//There are also several functions that are shared between modules
function globalFunction(){
}
var ModuleOne = function(){
function doSomething(){
//using the global function
globalFunction();
}
return{
doSomething:doSomething
}
};
var ModuleTwo = function(){
function doSomething(){
//module 2 also needs the global function
globalFunction();
//Use the functionality in module 1
//I can refactor this part to be loosely coupled/event driven
module1.doSomething();
}
};
module1 = new ModuleOne();
module2 = new ModuleTwo();
};
모든 모듈이 느슨하게 결합 및 이벤트 구동, 난 아직도 모르는했다하더라도 어떻게 것 이것을 공유 함수/변수에 대한 각 모듈의 의존성을 고려하여 여러 파일로 분할하십시오. 누구 제안이 있습니까?
[module8]과 같은 도구는 심각하지만, (https://github.com/clux/modul8) 문제를 해결하십시오 – Raynos
이 기사의 디자인 패턴을보십시오 : http://www.adequatelygood.com/2010/3/JavaScript-Module-Pattern-In- 깊이 - 너 공통 속성을 공유 할 수있는 방법으로 여러 파일에 모듈 정의를 분할 할 수 있지만 특정 파일에 대해 비공개 인 변수 또는 메소드를 만들 수도 있습니다. – nnnnnn
@nnnnnn 감사합니다. 나는 그것을 지금 점검 할 것이다. –