문제

ExtJS 4.2를 사용하고있는 웹 앱이 있습니다.이 응용 프로그램에는 일부 데이터, 다른 데이터, 그리드, 차트 등을 표시하는 또 다른 데이터, 그리드, 차트 등을 표시하는 다른 패널의 여러 구성 요소가 있습니다.

각 구성 요소가 최소한 특정 기능 및 속성 세트를 수행 할 필요가 있습니다.그래서 나는 다른 모든 것을 확장 할 수있는 '구성 요소'클래스를 정의하고 싶습니다.예 :

Ext.define('MyApp.BaseComponent', {
    extend: 'Ext.panel.Panel',
    alias: 'widget.myapp-basecomponent',

    prop1: true,
    prop2: 17,

    func1: function (a, b) {
        return a + b;
    }
});
.

그런 다음 I 앱에서 모든 개별 구성 요소를 해당 기본 구성 요소 클래스에서 확장합니다.문제는 내가 'ext.panel.panel'을 확장하는 것으로 기본 구성 요소를 정의하면 다른 패널 만 확장 할 수 있다는 것입니다.나는 그것에서 그리드, 나무 등을 확장 할 수 없다.

이 작업을 수행 할 수있는 방법이 있습니까?아니면 내가 이것을 잘못한 방식으로 접근하고 있습니까?어쩌면 패널에 패널 (그리드, 차트 등)이 아닌 모든 것을 모두 둥지 않도록 모든 것을 모두 둥지 않도록 할 수 있습니까?충고가 크게 감사드립니다.

도움이 되었습니까?

해결책

기본 구성 요소 클래스를 보강하려면 언제든지 추가 할 수 있습니다.

Ext.define('MyApp.AugmentComponent', {
    override: 'Ext.Component',

    a: 1,
    b: 2,

    fn1: function() {
    }
});
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top