學習FlexViewer(一) 事件和框架

2021-08-26 11:37:29 字數 1192 閱讀 1729

上午做了關於flexviewer的講座,專案組決定下面繼續在flexviewer介面上拓展,因此我也有意通過部落格與大家分享。眾所周知,flexviewer是由esri公司推出的基於web的flex應用框架,開發人員通過配置檔案即可快速搭建乙個以地圖服務應用為目的的富網際網路應用。

學習flexviewer,最重要的是掌握其框架結構,了解flexviewer組織模式,包括viercontainer、mapmanager、configmanager、widgetmanager的關聯關係,以及事件。本篇將重點講述flexviewer的組織原理以及開發方法,先從事件入手,通過事件的分發與監聽,將flexviewer中的各個manager關聯起來,進而明確其組織架構。

1、flex viewer事件

map_loaded:載入地圖完成後呼叫

set_map_action:與地圖互動相關的事件,其data引數中包含有地圖互動動作的token值,如zoomin,zoomout等;

data_fetch_all:獲得所有資料時呼叫;

data_fetch:獲得資料時呼叫

data_create_infowidget:建立widget時呼叫

widget_run:widget執行時呼叫;

widget_change_state:widget狀態變化時呼叫,其data引數中包含了widgetid和state值

widget_focus:widget得到焦點時呼叫

widget_add:新增widget時呼叫

widget_added:widget已新增後呼叫

2、掌握flexviewer的架構

flexviewer中,首先構造的uicomponet就是viewcontainer。viewcontainer中首先要通過httpservice載入config.xml檔案,然後載入mapmanger、configmanager、widgetmanager等物件;

configmanger主要用於載入widget的xml檔案,每乙個widget例項化之前都要載入xml檔案,在xml中可以定義一些全域性的變數(如geometryservice等),載入完畢之後同樣通過viewcontainer.dispatchevent分發 config_loaded事件,並新增相應的事件監聽。

widgetmanager主要用於載入widget,任何widget製作之後都要在widgetmanager中才能使用,因此該類中主要是widget相關的事件相應。

OneAlert 入門(一) 事件流

onealert 是國內首個 saas 模式的雲告警平台,整合國內外主流監控 支撐系統,實現乙個平台上集中處理所有 it 事件,提公升 it 可靠性。它能以史上第二快的速度,對事件進行智慧型的組織 排序和分類,從而極大地提高團隊在處理運維告警與事件時的協作能力。本文是 onealert 入門系列文章...

OneAlert 入門(一) 事件流

onealert 是國內首個 saas 模式的雲告警平台,整合國內外主流監控 支撐系統,實現乙個平台上集中處理所有 it 事件,提公升 it 可靠性。它能以史上第二快的速度,對事件進行智慧型的組織 排序和分類,從而極大地提高團隊在處理運維告警與事件時的協作能力。本文是 onealert 入門系列文章...

C 學習筆記(十一) 事件基礎

事件類似於異常,因為它們都由物件引發。但是它們也有幾個重要的區別 其中最重要的區別就是沒有處理異常中try.catch類似的結構來處理事件,而是必須訂閱它們。訂閱乙個事件的含義是提供 在事件發生時執行這些 它們稱為事件處理程式。事件處理程式本身都是簡單的函式。對事件處理函式的唯一限制是它必須匹配於事...