我没有看到读取API,提供对接入的任何东西: http://api.dojotoolkit.org/jsdoc/1.3.2/dojo.data.api.Read如何获取dojo数据存储的项目数量(大小)?
5
A
回答
1
任何数据存储区的连线数据的格式完全是特定于存储区的格式。为了让您获得总项目数量(和其他元数据),它必须作为响应的一部分返回。这是做服务器端分页的唯一方法。
我已经实现全部的店面预计数据包含totalCount
属性,像这样:
{
identifier: 'id',
items: [
{ id: 123, name: 'aaa', ... },
{ id: 456, name: 'bbb', ... },
...
],
totalCount: 525
}
该店保存该查询的时候返回(在onComplete
)。然后通过商店上的getTotalCount()
方法显示该值。
当与start
和count
请求选项一起使用时,这可以让你有很好的ajax分页(“Showing 1-50 of 525”)。
由于这不是API的一部分,所以读取API的核心实现并不实现它。这种技术的一种形式(类似于我所做的)似乎是由dojo.data.QueryReadStore
实现的,所以你也可以在那里看看。
8
一个例子,在dojocampus演示的一种方式。这里fetch
没有query
参数返回存储中的所有项目。
var store = new some.Datastore();
var gotItems = function(items, request){
console.log("Number of items located: " + items.length);
};
store.fetch({onComplete: gotItems});
0
我一直在寻找的答案,使用JsonRest店这个问题,这似乎是它:
在您的服务器,你应该看看 的Range头的知道哪些项目的要求回来。该 服务器应该与内容Range头回应,表示有多少被退回 项目和总项目存在多少:
Content-Range: items 0-24/66
来源:http://dojotoolkit.org/reference-guide/dojo/store/JsonRest.html
2
dojo.data.api.Read的onBegin功能有比赛的总大小:
function size(size, request){
// Do whatever with the size var.
}
store.fetch({query: {}, onBegin: size, start: 0, count: 0});
0
下面的代码为我工作
// questionStoreReader is a pointer that points to and can read ask.json file
var questionStoreReader=new dojo.data.ItemFileReadStore({url:"ask.json"});
questionStoreReader.fetch(
{
onComplete:function(items,request) // items is an array
{
alert(items.length);// number of items in ask.json
},
})
相关问题
- 1. Dojo DataGrid - 从格式化程序获取数据存储项目?
- 2. Cassandra数据存储大小
- 3. 如何在项目中存储数据
- 4. 如何获取SQL存储的数据?
- 5. 存储大量数据点?
- 6. 存储大量数据
- 7. 如何获取collectionview数据源中的项目数量
- 8. WP7数据存储 - 大量数据
- 9. 获取数据,并存储在变量
- 10. 如何在C#项目中存储表格常量数据?
- 11. App Engine数据存储获取多个父项的子项数
- 12. 如何使用数据存储获取条目的ID /名称
- 13. 如何获取Firebase数据库中项目的最大ID?
- 14. 像大量项目上的deque一样,但小数目内存使用量小?
- 15. 将数据批量上传到GAE数据存储Java项目
- 16. 我如何向Google数据存储插入大量数据?
- 17. 从SQL Server数据库存储和提取大量数据
- 18. dojo xmlstore和数据网格项目数
- 19. 如何获取数据库值和存储在JavaScript变量
- 20. 如何获取JSON数据并存储到变量中。
- 21. 如何在数组中存储数据库中的项目?
- 22. 如何在内存中存储大量的文本数据?
- 23. 存储和访问大量数据的
- 24. C#:存储大量数据的my.settings
- 25. QHash存储大量的数据
- 26. 如何从数据库做大量的数据后存储数据? PHP
- 27. 如何存储小部件的数据?
- 28. 如何删除DOJO数据存储添加到我提取的项目中的所有额外字段?
- 29. GAE转到数据存储大小
- 30. 本地存储数据库大小
随着dojo.data.ItemFileReadStore你可以做: myStore._getItemsArray()长度 但这是特定于数据存储。我想知道获得商店大小的正确方法是什么。 – Arlo 2009-10-28 17:29:26
这种方法比我最初想象的更加骇人听闻。在调用提取之前,数组不会被初始化。所以你必须确保在检查数组长度之前获取数据。 >>> store._getItemsArray()。长度 >>> store.fetch() 对象存储=对象 >>> store._getItemsArray()。长度 2 – Arlo 2009-10-28 17:46:41