采用页面级数据过滤可以减少与服务器的交互,下面以
GIS共享平台中的实际例子简单说下:
[Bindable]
public var quireList:ArrayCollection;//需求列表
----------------------------------------------------------------
FilterFunction 用来消除不符合函数条件的 项目的函数。
quireList.filterFunction=this.filtermaps;
this.quireList.refresh();
----------------------------------------------------------------
filtermaps 是我们自己为实现过滤的方法 返回值必须是Boolean
//过滤地图
private function filtermaps(item:Object):Boolean{
var match:Boolean = true;
if(btbindex==0){
xmin=map.extent.xmin;
xmax=map.extent.xmax;
ymin=map.extent.ymin;
ymax=map.extent.ymax;
var longitude:Number = item["longitude"];
var latitude:Number = item["latitude"];
if(longitude>xmax||longitude<xmin||latitude>ymax||latitude<ymin){
match=false;
}
}
return match;
}
[Bindable]
public var quireList:ArrayCollection;//需求列表
----------------------------------------------------------------
FilterFunction 用来消除不符合函数条件的 项目的函数。
quireList.filterFunction=this.filtermaps;
this.quireList.refresh();
----------------------------------------------------------------
filtermaps 是我们自己为实现过滤的方法 返回值必须是Boolean
//过滤地图
private function filtermaps(item:Object):Boolean{
var match:Boolean = true;
if(btbindex==0){
xmin=map.extent.xmin;
xmax=map.extent.xmax;
ymin=map.extent.ymin;
ymax=map.extent.ymax;
var longitude:Number = item["longitude"];
var latitude:Number = item["latitude"];
if(longitude>xmax||longitude<xmin||latitude>ymax||latitude<ymin){
match=false;
}
}
return match;
}