2012-07-13 4 views
0

Ext JS 4에서 클래스를 만들었습니다. 이제이 클래스를 다른 클래스에서 확장하려고합니다. 클래스를 확장하려면 extend 속성을 사용합니다. 그러나 나는 수업을 연장 할 수 없다. require를 사용하여 클래스 파일을 포함하고 싶습니까? 하지만 두 파일을 동일한 디렉토리에 보관합니다.ExtJS4에서 우리 자신의 클래스를 확장하는 방법

+0

체크 http://stackoverflow.com/questions/6290729/how-to-use-ext-define-in- extjs4/6455079 – Jom

답변

0

소스 파일을 찾으려면 ExtJS의 소스 경로를 정의하십시오.

Ext.Loader.setConfig({ 
      enabled: true, 
      paths: { 
       '[your namespace prefix here]': '[physical path]' 
      } 
     }); 

나서 자동 경로 해상도를 활성화 또는 서브 클래스에 Ext.require requires 부분을 정의한다. 자세한 내용은 this link을 참조하십시오.

기본 클래스 : 폴더에있는 파일 root/view/selection/DriverTreeCombo.js

Ext.define('RL.view.selection.DriverTreeCombo', { 
     extend: "RL.view.common.Picker", 
     requires: ['Ext.tree.Panel', 'RL.view.common.TreeBase'], 
... 
} 

내가 RL.xxx.xxx으로 네임 스페이스를 가지고 : 파일 root/view/common/Picker.js

Ext.define('RL.view.common.Picker', { 
    extend: "Ext.form.field.Picker", 
... 
} 

클래스 하위 폴더에 위치 RL은 root 폴더로되어 있습니다. 지금은 로더 구성이 'Ext.onReady (...)'함수 호출하기 전에 설정해야합니다

Ext.Loader.setConfig({ 
      enabled: true, 
      paths: { 
       'RL': '/root'      
      } 
     }) 

아래로 로더 구성을 정의 할 수 있습니다. ExtJS 패키지의 examples 폴더를 통해이 작업이 어떻게 수행되는지 볼 수 있습니다.

추가 읽기 :

+0

감사합니다 ..하지만 어디에서이 코드를 사용하고 싶습니까? 우리는 별도의 파일을 만들어야하거나 js 파일에 쓸 수 있습니다. 여기서 우리는 우리 자신의 클래스 파일을 확장합니까? – Boopathy

+0

예제를 추가했습니다 – jorel

+0

콜롬보 감사합니다 ...--) – Boopathy

관련 문제