0

在颠簸的开始之后,我一直在使用 dgrid 的 OnDemandGrid 和 dojo.store.JsonRest 相当成功,但是在实现缓存时注意到一个小故障:如果我长时间滑动触控板(即,我不科学地滚动了“很长的路”)和然后向后滚动,dgrid 似乎对我所在的位置感到困惑。例如,假设我在第 1609 行附近,然后向下滑动并发现自己正在查看第 500 行。如果我随后向上滚动到顶部,我会发现行的 ID 可能类似于 1609、1608、1607 , 503, 502, 501, 500... 如果我向下滚动父亲,它会拾起缺少的行 499、498、497、1606、1605 等。

var store = Observable(Cache(JsonRest({
    target: "/cgi-bin/safari/safari_retrv.pl?action=front&format=json",
    sortParam: "sort",
    idProperty: "queryId"
}),Memory()));


var grid = new declare([OnDemandGrid, Keyboard, Selection, DijitRegistry])({
    store: store,
    query: {aid: "1604" },
    bufferRows: 40,
    loadingMessage: "Loading...",
    columns: {
        aid: "AID",
        title: "Title",
        poster: "Poster",
        postTime: "Posting Date",
        commentCount: "Comments"
    },
}, "grid");

即使存储只是没有缓存存储的 JsonRest,也会出现问题。

4

0 回答 0