3
    var MarkerStore = Ext.create('Ext.data.JsonStore', {
            model: 'GoogleMarkerModel',
            autoLoad: true,
            proxy: {
                type: 'ajax',
                url: 'get-googlemarker.php',
                baseParams: {  //here you can define params you want to be sent on each request from this store
                            mainid: 'value1'
                            },
                reader: {
                    type: 'json',
                    idProperty:'MainID',
                }

            }
        });

setTimeout(MarkerStore, 60000);

これは正しいですか?60秒ごとに新しいデータを取得できないためです

4

1 に答える 1

3

javascriptsetInterval関数を使用します。Senchaは、ライブグリッドの例でこれを使用しています

例えば:

// reload the stores once and then repeatedly every 60 seconds
MarkerStore.load();
setInterval(function() {
    MarkerStore.load();
}, 60000);

より完全な答えを得るには、setTimeout使用していたjavascript関数は、指定されたミリ秒数の後に1回だけコードを実行します。関数setIntervalを繰り返し実行したいものです。

setIntervalまた、との最初の引数setTimeoutはjavascript関数であることに注意してください。上記のコードスニペットでは、ストアオブジェクト自体を最初の引数として渡しているため、ストアオブジェクトはまったく呼び出されません。このページにはより多くのデータがあります。

于 2013-03-06T03:35:10.593 に答える