ArcGIS Flex API 中的 Flex 技术(三)--异步特征

简介:

    Flex天生具备异步调用的能力,使得Flex能够很好的适应webgis应用中的常用功能,在ArcGIS Flex API中,最典型的莫过于地理要素信息的动态显示,例如对于关注的地理要素,当鼠标移动上去后显示出该要素的基本信息,ArcGIS Flex API Demo的"Show InfoWindow on mouse hover"就是这样的例子。
复制代码
Code
<![CDATA[
    import com.esri.ags.geometry.MapPoint;
    import com.esri.ags.Graphic;
    private const m_content : InfoWindowRollOverContent 
= new InfoWindowRollOverContent();
            
    override protected 
function createChildren():void
    {
        super.createChildren();
        map.infoWindow.content 
= m_content;
        map.infoWindow.labelVisible 
= false;
        map.infoWindow.closeButtonVisible 
= false;
    }
            
    private 
function rollOverHandler( event : MouseEvent ) : void
    {
        const graphic : Graphic 
= Graphic( event.target );
        const mapPoint : MapPoint 
= MapPoint( graphic.geometry );
        m_content.lat 
= mapPoint.y.toFixed( 3 );
        m_content.lon 
= mapPoint.x.toFixed( 3 );
        map.infoWindow.show(mapPoint);              
    }
            
    private 
function rollOutHandler( event : MouseEvent ) : void
    {
        map.infoWindow.hide();
    }
]]
>
复制代码

    当鼠标移动到地理要素(点、线、面)上方时,会调用rollOverHandler方法,显示出该地理要素的x/y坐标,之后由rollOutHandler清除显示的结果,整个过程不会同步刷新所有地图。Flex异步调用的特性和单线程机制,使得我们经常会在Flex中使用回调函数的方法,如之前写过的事件监听:
复制代码
Code
<?xml version="1.0"?>
<!-- events/SimpleEventHandler.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="initApp();">
    
<mx:Script><![CDATA[
        import mx.controls.Alert;

        private function initApp():void {
            b1.addEventListener(MouseEvent.CLICK, myEventHandler);
        }

        private function myEventHandler(event:Event):void {
            Alert.show("An event occurred.");
        }
    ]]
></mx:Script>

    
<mx:Button id="b1" label="Click Me"/>
</mx:Application>
复制代码

    Flex中如果希望实现同步,可以考虑WebService Components,异步调用最初会让人想到是基于性能的一种设计,现在换成WebService似乎走向了另外一个极端,于是出现这样的设计:
    "在通过RemoteObject进行数据交互的时候触发invoke事件,把画面给锁住,result的时候解锁。"

    但这只是RemoteObject在数据交互上同步,在画面上的动作还是有异步存在的,对于地图交互来说,还是异步设计更贴近实际应用。

 本文转自Flyingis博客园博客,原文链接:http://www.cnblogs.com/flyingis/archive/2008/12/14/1354779.html,如需转载请自行联系原作者

目录
打赏
0
0
0
0
51
分享
相关文章
JavaScript中通过array.map()实现数据转换、创建派生数组、异步数据流处理、复杂API请求、DOM操作、搜索和过滤等,array.map()的使用详解(附实际应用代码)
array.map()可以用来数据转换、创建派生数组、应用函数、链式调用、异步数据流处理、复杂API请求梳理、提供DOM操作、用来搜索和过滤等,比for好用太多了,主要是写法简单,并且非常直观,并且能提升代码的可读性,也就提升了Long Term代码的可维护性。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
1688 快递费用 API 接口的技术剖析与应用
1688快递费用API接口为企业和开发者提供自动化、高效化的快递费用查询服务,打破人工查询的繁琐局面。通过输入寄件与收件地址、商品重量、体积及选择快递公司等信息,接口精准计算费用并返回结果,支持中通、圆通等主流快递。输出内容包括快递费用、预估时效及附加费说明,助力电商精细化运营。Python示例代码展示了如何使用requests库发起POST请求并解析响应数据,实现费用查询自动化。
116 10
解锁 DeepSeek API 接口:构建智能应用的技术密钥
在数字化时代,智能应用蓬勃发展,DeepSeek API 作为关键技术之一,提供了强大的自然语言处理能力。本文详细介绍 DeepSeek API,并通过 Python 请求示例帮助开发者快速上手。DeepSeek API 支持文本生成、问答系统、情感分析和文本分类等功能,具备高度灵活性和可扩展性,适用于多种场景。示例展示了如何使用 Python 调用 API 生成关于“人工智能在医疗领域的应用”的短文。供稿者:Taobaoapi2014。
深度解析淘宝商品评论API接口:技术实现与应用实践
淘宝商品评论API接口是电商数据驱动的核心工具,帮助开发者高效获取用户评价、画像及市场趋势。其核心功能包括多维度信息采集、筛选排序、动态更新、OAuth 2.0认证和兼容多种请求方式。通过该接口,开发者可进行商品优化、竞品分析、舆情监控等。本文详细解析其技术原理、实战应用及挑战应对策略,助力开启数据驱动的电商运营新篇章。
淘宝 API 接口使用的技术要点与注意事项
在数字化商业环境中,淘宝API为开发者提供了强大的工具,用于与淘宝平台交互,获取商品信息及处理交易等。本文总结了正确使用API的关键技术要点:注册认证、理解接口文档、遵守调用限制、确保参数准确性、保护数据安全、处理异常、性能优化、版本兼容、合规性及日志监控,帮助开发者实现高效、安全的程序开发。
深入理解后端技术中的API设计原则
在当今数字化时代,后端技术已成为构建高效、可扩展和安全应用程序的关键因素。本文将探讨后端开发中的API设计原则,包括RESTful架构、版本控制以及安全性等方面,旨在帮助开发者提升API设计的质量和用户体验。通过对这些原则的深入理解,可以更好地满足业务需求并提高系统的可靠性。
108 0
通过亚马逊产品广告API获取国际商品详情的技术实现
本文详细介绍如何通过亚马逊产品广告API获取国际商品信息。首先,需注册亚马逊联盟账户并申请API访问权限,获取AWS Access Key ID等凭证。接着,解析API端点和服务,如ItemLookup和ItemSearch。然后,构建API请求,包括URL、参数设置及签名生成。以Python为例,使用requests或boto3库实现API调用,并处理XML格式的API响应。最后,注意API速率限制、区域设置、数据更新及错误处理。参考官方文档确保调用准确性和安全性。
拍立淘API是基于图像识别技术的服务接口,支持淘宝、1688和义乌购平台。
拍立淘API是基于图像识别技术的服务接口,支持淘宝、1688和义乌购平台。用户上传图片后,系统能快速匹配相似商品,提供精准搜索结果,并根据用户历史推荐个性化商品,简化购物流程。开发者需注册账号并获取API Key,授权权限后调用接口,返回商品详细信息如ID、标题、价格等。使用时需遵守频率限制,确保图片质量,保障数据安全。
API技术之身份认证
【10月更文挑战第17天】身份认证是API安全的核心,确保API可信可控。
API技术之身份认证
API接口 |产品经理一定要懂的10%技术知识
作为产品经理,掌握约10%的技术知识对处理API相关工作至关重要。这包括理解API的基本概念及其作为数据交换的桥梁作用;熟悉JSON和XML两种主要数据格式及其特点;了解常见HTTP请求方法(GET、POST、PUT、DELETE)及响应状态码;关注API安全性,如认证授权和数据加密;掌握API版本管理和错误处理技巧;重视性能优化,以提升用户体验;参与API联调测试,确保稳定可靠;并与前后端团队紧密协作,选择合适的第三方API服务,推动产品高效开发。

热门文章

最新文章

下一篇
oss创建bucket