2017-09-13 3 views
0

에 위젯의 바인드 가시성 I이 버튼이 포함 된 widgetcolumn : 만 canUpdateKey이 기록에 사실 버튼을 표시 할widgetcolumn : dataIndex

xtype:'widgetcolumn', 
dataIndex: 'canUpdateKey', 
itemId:'updateKey', 
width:120, 
widget: { 
    xtype: 'button', 
    text: 'Update key', 
    hidden: '{!record.canUpdateKey}' 
} 

을; 하지만 이것은 들여 쓰기가되지 않습니다. 당신의 버튼 위젯 내부 Relevant fiddle

답변

1

:

렌더링 된 구성 요소는 뷰 모델에서 을 상속 주입 된 Ext.app.ViewModel있다을 그 그리드는 두 개의 추가 속성을 포함합니다 : 레코드recordIndex

위젯 구성에는 ViewModel의 데이터를 사용하는 cfg-bind 구성이 포함될 수 있습니다.

그래서 당신은 다음과 같이 대신 바인딩을 사용해야합니다

xtype:'widgetcolumn', 
dataIndex: 'canUpdateKey', 
itemId:'updateKey', 
width:120, 
widget: { 
    xtype: 'button', 
    text: 'Update key', 
    bind: { 
     hidden: '{!record.canUpdateKey}' 
    } 
} 

바이올린 : https://fiddle.sencha.com/#view/editor&fiddle/26ig

0

이를 시도해보십시오 widget 설정 문서에서

listeners:{ 
       render:function(btn){ 
        if(!btn.getWidgetRecord().data.canUpdateKey) 
        btn.hide(); 
       } 
       }