2012-01-01 1 views
0

나는 ExtDesigner이 창을 설계 사용하고, 생성 된 JSON과 같은 것이다 : 나는 그것을 복사하지만 난 그것을 사용하는 방법을 모른다생성 된 json을 사용하여 extjs 창을 작성하는 방법은 무엇입니까?

{ 
    xtype: 'window', 
    height: 477, 
    width: 666, 
    layout: 'fit', 
    title: '添加广告位', 
    items: [ 
     { 
      xtype: 'form', 
      bodyStyle: 'padding: 10px', 
      title: '', 
      items: [ 
       { 
        xtype: 'textfield',  
        anchor: '100%', 
        fieldLabel: '名称' 
       }, 
       { 
        xtype: 'radiogroup', 
        anchor: '100%', 
        fieldLabel: '广告类型', 
        items: [ 
         { 
          xtype: 'radio', 
          boxLabel: '文字' 
         }, 
         { 
          xtype: 'radio', 
          boxLabel: '图片' 
         } 
        ] 
       } 
      ] 
     } 
    ] 
} 

. Extjs 구성 요소로 변환하는 방법을 찾지 못했습니다. 그것을하는 방법?

추 신 : 나는 extjs를 사용합니다. 2.2

답변

2

두 가지 방법으로 ExtJS 구성 요소를 만들 수 있습니다.

  1. 예를 들어 new Ext.Window({...});과 같이 구성 요소를 명시 적으로 만듭니다. 이렇게하면 이벤트 리스너, 추가 메서드 등을 의미하는 구성 요소를 즉시 얻을 수 있습니다.

  2. 평범한 자바 스크립트 개체에 구성 요소의 xtype을 지정하여 두 번째 방법은 지연로드입니다. 이것은 정확히 당신이 가진 것입니다.

이 두 번째 방법 작동하려면, 당신은 ExtJS에 컨테이너에 위해 xtype - 자바 스크립트 객체를 포함해야하고, 컨테이너는 적절한 시간에 그것을 렌더링하는 방법을 알 수 있습니다. 예를 들어

:

Ext.onReady(function(){ 
    new Ext.Viewport({ 
     layout : 'fit', 
     items : [{ 
      xtype: 'window', 
      height: 477, 
      width: 666, 
      layout: 'fit', 
      title: '添加广告位', 
      items: [...] 
     }] 
    }); 
}); 
+0

그래서 난 여전히 JSON을 유지하기 위해 용기가 필요합니다. Ext 메서드로 변환 할 수있는 메서드가 있으면 완벽 할 것입니다. – Freewind

+0

hmmm, Ext.ComponentMgr.create ({xtype : window, ...})를 시도하십시오. – Chao

0

다음과 같은 것을 찾으십시오. 이렇게하면 팝업 창이 나타납니다.

var win = new Ext.Window({ 
width:400 
,id:'autoload-win' 
,height:300 
,autoScroll:true 
}); 
win.show();