dojo.data.util.simpleFetch
dojo.data.util.simpleFetch.fetch = function(/* Object? */ request){ …… }
这是simpleFetch在dojo site上的文档,格式很糟,http://api.dojotoolkit.org/jsdoc/1.3.2/dojo.data.util.simpleFetch,我分了段贴在这里。
The simpleFetch mixin is designed to serve as a set of function(s) that can be mixed into other datastore implementations to accelerate their development.
The simpleFetch mixin should work well for any datastore that can respond to a _fetchItems() call by returning an array of all the found items that matched the query.
The simpleFetch mixin is not designed to work for datastores that respond to a fetch() call by incrementally loading items, or sequentially loading partial batches of the result set.
For datastores that mixin simpleFetch, simpleFetch implements a fetch method that automatically handles eight of the fetch() arguments — onBegin, onItem, onComplete, onError, start, count, sort and scope.
The class mixing in simpleFetch should not implement fetch(), but should instead implement a _fetchItems() method.
The _fetchItems() method takes three arguments, the keywordArgs object that was passed to fetch(), a callback function to be called when the result array is available, and an error callback to be called if something goes wrong.
The _fetchItems() method should ignore any keywordArgs parameters for start, count, onBegin, onItem, onComplete, onError, sort, and scope.
The _fetchItems() method needs to correctly handle any other keywordArgs parameters, including the query parameter and any optional parameters (such as includeChildren).
The _fetchItems() method should create an array of result items and pass it to the fetchHandler along with the original request object — or, the _fetchItems() method may, if it wants to, create an new request object with other specifics about the request that are specific to the datastore and pass that as the request object to the handler.
For more information on this specific function, see dojo.data.api.Read.fetch()
dojo.data是个很强大的功能,提供了统一的数据处理接口,以及可用于对8个handler调用的机会:onItem, onBegin, onComplete, onError等等。开发者需要做的就是,自己实现_fetchItems()并在其中调用simpleFetch.fetch中定义的两个handler。在实际使用时,开发者需要调用的仍然是datastore的fetch方法。
最新评论