Merge pull request #12066 from M393/vector-layer-get-feature-promise

Always return Promise from getFeatures
This commit is contained in:
Andreas Hocevar
2021-02-24 19:25:50 +01:00
committed by GitHub
2 changed files with 10 additions and 11 deletions

View File

@@ -210,6 +210,9 @@ class Layer extends BaseLayer {
* an array of features.
*/
getFeatures(pixel) {
if (!this.renderer_) {
return new Promise((resolve) => resolve([]));
}
return this.renderer_.getFeatures(pixel);
}

View File

@@ -63,18 +63,14 @@ class CanvasVectorImageLayerRenderer extends CanvasImageLayerRenderer {
* @return {Promise<Array<import("../../Feature").default>>} Promise that resolves with an array of features.
*/
getFeatures(pixel) {
if (this.vectorRenderer_) {
const vectorPixel = apply(
this.coordinateToVectorPixelTransform_,
apply(this.renderedPixelToCoordinateTransform_, pixel.slice())
);
return this.vectorRenderer_.getFeatures(vectorPixel);
} else {
const promise = new Promise(function (resolve, reject) {
resolve([]);
});
return promise;
if (!this.vectorRenderer_) {
return new Promise((resolve) => resolve([]));
}
const vectorPixel = apply(
this.coordinateToVectorPixelTransform_,
apply(this.renderedPixelToCoordinateTransform_, pixel.slice())
);
return this.vectorRenderer_.getFeatures(vectorPixel);
}
/**