0

ExtJS で解決策が必要です。ツリー ストアがあります。

Ext.onReady(function(){

    var storeTree = Ext.create('Ext.data.TreeStore', {
    autoLoad:false,
    expanded: false,    
    proxy: {
        type: 'ajax',
        url: 'getOneLevelChilds',
    },

    root: {
        text: 'Ext JS',
        id: 'src',
        expanded: true,
        children:[]
    },
    ...
    ]
});

そして、最後に選択した子を初めてロードするときにツリーがロードされるとき(たとえば、昨日ツリーを開いて1つを選択します。JSONをデータベースに保存したので、ツリーを展開します)

storeTree.load({
    url: 'getLastSelectedChild'
});

OK、すべてが機能します。しかし今、私はいくつかの解決策が必要です。

起動時にツリーをロードすると(ロードされたとき)、JSONがあります:

[
    {"id":3, "text":"first",},
    {"id":4, "text":"second",},
    {
    id:"0", text: "third", expanded: true, children: 
                [
                    {
                        id:"1", text: "child1", leaf: true
                    },
                    {
                        id:"2", text: "child2", leaf: true
                    }
                ] 

    },

]

選択したノードIDもデータベースに保存します。id="2"がイースター日に選択されたことを知っています。起動時にそのノードを自動的に選択するにはどうすればよいですか? (起動時のみ、ツリーがロードされるときのみ)。どうやってやるの?

PSツリーストアでプロキシを使用すると、選択が次のように機能しません。

 var record = this.getStore().getNodeById('1');
 this.getSelectionModel().select(record)

しかし、プロキシを使用しない場合は機能します。

また、起動時にのみその選択が必要です

4

1 に答える 1