0

Ext JS 4でクラスを作成しましたが、それを別のクラスで拡張したいと思います。extendクラスを拡張するために、プロパティを使用します。しかし、私はクラスを拡張することができません。クラスファイルを含めるためにrequireを使用しますか?しかし、私は両方のファイルを同じディレクトリに保持しています。

4

1 に答える 1

0

ExtJSのソースパスを定義して、ソースファイルを見つけます。

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

次に、サブクラスで定義Ext.requireまたはrequiresセクション化して、自動パス解決を有効にします。詳細については、このリンクをお読みください。

基本クラス:フォルダーにあるファイルroot/view/common/Picker.js

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

サブクラス:フォルダにあるファイルroot/view/selection/DriverTreeCombo.js

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

root名前空間はRL.xxx.xxxで、RLがフォルダーになるはずです。これで、ローダー構成を次のように定義できます

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

ローダー構成は、「Ext.onReady(...)」関数呼び出しの前に設定する必要があります。ExtJSパッケージのexamplesフォルダーに目を通すと、これがどのように行われるかを確認するのに役立ちます。

参考文献:

于 2012-07-13T12:53:52.760 に答える