자바스크립트/Ext JS2013. 5. 22. 16:27
Ext.onReady(function() {
	/***
	 * Date : 2013.05.22
	 * Desc : Override Ext JS functionality
	 * 		  당신이 ExtJS 프레임웍의 동작을 변경하고자 한다면(권장하지 않음)
	 * 		  직접 프레임웍을 편집하지 않고 override를 이용해여 당신이 만든 클래스를 
	 * 		  통해 쉽게 제어 또는 변경할 수 있다.
	 * 
	 * 		  프레임 워크 코드를 변경하는 것은 강력하게 다른 개발자로 권장하지되는 것은 
	 * 		  변경을 실현하지 않을 수 있으며 불쾌 표준이 아닌 행동에 의해 놀라게 될!
	 * 
	 * 		  override는 기존의 클래스를 가지고도 기존 기능의 동작을 수정하거나 완전히
	 * 		  새로운 것들을 추가 할 수 있습니다. 이것은 크게 프레임워크의 완전히 밖으로 
	 * 		  상자의 동작을 변경하는
	 * 		  매우 간단한 방법을 제공하기 때문이다.
	 * 
	 * 		  Ext JS override는 Ext.Base.override를 칭한다.
	 * 		  Ext.override(Object originalCls, Object overrides) 오리지날 클래스와 합치길 원하는
	 * 		  클래스를 지정하므로서 두개의 클래스가 병합된다.
	 */
	Ext.define('Simple.Class', {
		welcome : function() {
			alert('Welcome to the app');
		}
	});

//	Simple.Class.override({
//		goodBye : function() {
//			alert('Goodbye');
//		},
//
//		runAll : function() {
//			this.welcome();
//			this.goodBye();
//		}
//	});

	Ext.override(Simple.Class, {
		goodBye : function() {
			alert('Goodbye');
		},

		runAll : function() {
			this.welcome();
			this.goodBye();
		}
	});

	var app = new Simple.Class();
	app.runAll(); // Welcome to the app
	// Goodbye

});

// 출처 : Ext JS4 Web Application Development Cookbook
Posted by 베니94