我正在遵循 OpenLayers 示例“WebGL Vector Layer”,并尝试简单地从我的 GeoJSON 文件中指定多边形的颜色填充,但无法做到。
我相信问题可能存在于示例中引用“WebGLStyle”的注释@type行中,如下所示。我一直无法找到、导入或添加 WebGLStyle。我的多边形仅以灰色显示。
有人可以提供一个代码片段,让我可以对我的多边形应用简单的红色填充吗?
上述 OL 示例中的代码:
/** @type {import('ol/style/webgl.js').WebGLStyle} */
const style = {
'stroke-color': ['*', ['get', 'COLOR'], [220, 220, 220]],
'stroke-width': 3,
'stroke-offset': -1,
'fill-color': ['*', ['get', 'COLOR'], [255, 255, 255, 0.6]],
};
我的代码尝试尝试将多边形设置为红色:
const sStyle = {
'fill-color': [255, 0, 0],
};
class WebGLLayer extends Layer {
createRenderer() {
return new WebGLVectorLayerRenderer(this, {
className: this.getClassName(),
sStyle,
});
}
}
const polygonLayer = new WebGLLayer({
> Then add vector source, etc.
在 Mike 评论的帮助下,确定此代码应该可以工作。通过“npm install ol”进行了全新安装,解决了该问题。