2

JSON データを Tree または TreePanel にロードする必要があります。JSON データは、ファイルから取得したり、URL から取得したりするのではなく、オンザフライで構築されます。

例が見つかりません。

誰でも助けることができますか?

4

2 に答える 2

1

検索フィールドで何かを検索して Treegrid afetr を作成しようとしていたときに (これを URL に渡す必要があります)、奇妙な動作を見つけました。

ここで作成したロジックは次のとおりです。

  1. rootVisible: false および store:mystore を使用して Tree クラスを作成しました
  2. コントローラーから動的に設定する必要があったため、私のストアにはプロキシがありません。{}
  3. ストア内 autoLoad:false がありました
  4. mystore.load() を使用してデータをツリーにロードしました

リクエストは 2 回行われました ルート ノードがありませんが、ツリーに空白のルート ノードがあります。

次の方法で修正しました...これが正しいかどうかはわかりません。より良い解決策があれば共有してください

ツリークラス(表示)

            Didn’t define any treestore inside tree view
            rootVisible: false

コントローラー内部

search: function(button){

            var searchText = this.getSearchField().value;


            //created a store instance

            var mystore = Ext.data.StoreManager.lookup('MyTreeStore');

            mystore.setProxy({
                                 type: 'ajax',
                                 url: 'app/searchid/'+searchText;
                             });


            var mytree = Ext.create('AM.view.MyTree',{store:mystore});

            Ext.getCmp('tn').add(mytree);

            //DON’T USE store.load() method As we have set rootVisible: false so it will automatically try to load the store or will send the request

}

保存ファイル

            Ext.define('AM.store.BomTreeStore', {

                extend: 'Ext.data.TreeStore',

                model: 'AM.model.BomTree',

                autoLoad: false,

                folderSort: true
            });

このplz共有に対するより良い解決策:)

于 2012-08-30T18:29:58.647 に答える