IdentifyUtils.js 1.39 KB
import {loadModules} from 'esri-loader'

export default {
    methods: {
     
        identify(url,layerIds,geometry ,callBackFunction){
            var self = this;
            loadModules([
                "esri/tasks/IdentifyTask",
                "esri/tasks/support/IdentifyParameters"
            ]).then(([
                IdentifyTask,
                                     IdentifyParameters
            ]) => {
                var identifyTask = new IdentifyTask({
                    url:url
                }),
                identifyParameters = new IdentifyParameters();
                identifyParameters.geometry = geometry;
                if(layerIds){
                    identifyParameters.layerIds = layerIds;
                }
                identifyParameters.layerOption  = "all";
                identifyParameters.tolerance = 3;
                identifyParameters.mapExtent = geometry.extent;
                identifyParameters.returnGeometry  = true;
                identifyParameters.spatialReference = geometry.spatialReference;
                identifyTask.execute(identifyParameters).then(result => {
                    if(callBackFunction && typeof callBackFunction == 'function'){
                        callBackFunction(result);
                    }
                });
            }).catch(err => {
                throw(err);
            });
                       
        }
    }
}