1. 程式人生 > >ArcGIS JS API中切換頁面後元件報Tried to register widget with id==" " but that id is already registered

ArcGIS JS API中切換頁面後元件報Tried to register widget with id==" " but that id is already registered

       由於ArcGIS JavaScript API 基於dojo框架,在dojo中,除了沿用Dom結點, dojo 還自定義了一類結點用“dojoType" 進行標識。dojo 稱這些結點為widget。我們在向地圖中新增一些控制元件時,這些控制元件其實就是widget.

這樣在程式中有時候註冊ID的時候,我們註冊的widget,在第二次重複使用的時候,會出現如下錯誤:

Tried to register widget with id=="myid" but that id is already registered

解決方法就是:先把註冊的destory,然後再建立一個相同ID的容器

if(registry.byId("myTableNode")){
    registry.byId("myTableNode").destroy();
}