This sample demonstrates how to watch for changes on the map view.
How to use the sample
Clone the sample repo and copy this widget's folder (within widgets
) to the client/your-extensions/widgets
folder of your Experience Builder installation.
How it works
A class property onActiveViewChange
for the widget is assigned to the function JimuMapView
. This function uses
the jimuMapView.view.watch()
method, which takes two imput parameters, the extent property and a callback function to
execute each time the extent property changes. The setState
method is called to re-render the widget with the updated state.
onActiveViewChange = (jimuMapView: JimuMapView) => {
if(!this.extentWatch){
this.extentWatch = jimuMapView.view.watch('extent', extent => {
this.setState({
extent
})
});
}
}