0

だから私はここで定義しているグリッドクラスを持っています:

Ext.define('MC.view.portal.MetadataWidget', {
    extend: 'Ext.grid.Panel',
    id: 'metadatawid',
    title: 'Graph',
    store: Ext.data.StoreManager.lookup('metadatastore'),
    alias: 'widget.metadatawidget',
    initComponent: function() {
        this.columns = [
            {header: 'KBE Name', dataIndex: 'KBE_NAME', flex: 3, tdCls: 'grid_cell'},
            ...//remaining rows
        ];

        this.callParent(arguments); 
    }
});

そして、エイリアスを使用して app.js で定義しようとしています:

Ext.create('Ext.panel.Panel', {
            id: 'app_container',
            width: '100%',
            height: 1000,
            renderTo: 'container',
            layout: 'hbox',
            border: false,
            requires: [ 'MC.view.portal.MetadataWidget' ],
            items: [
                { xtype: 'metadatawidget', height: 400, width: ...

ただし、次のエラーが発生します。

TypeError: name is undefined
if (name === from || name.substring(0, from.length) === from) {

コントローラーを実装する以外に、これは基本的に Sencha ドックでウィジェットを定義するのと同じ方法に従っていますが、エラーの理由を見つけることができません。何か案は?

- 店は働く

-ディレクトリは問題ありません

-ウィジェットを作成すると問題が発生する

乾杯!

4

1 に答える 1

1

app.js の requires config に「MC.view.portal.MetadataWidget」を含めましたか? このエラーは通常、クラスがまだ Ext によってロードされていないことを意味します。

于 2013-08-28T16:09:47.797 に答える