如何解决react-map-gl-draw 访问方法
我正在尝试在我的地图项目中实现绘图功能。我正在使用 Uber 的 react-map-gl-draw 库。根据他们的文档,您可以自己提供特征数据,否则库将在内部存储所有特征 -
" features (Feature[],Optional) - GeoJson 格式的功能列表。 如果功能是由用户提供的,则 react-map-gl-draw 尊重 用户的输入,因此忽略任何内部特征。但是如果 没有提供功能,然后 react-map-gl-draw 管理功能 在内部,用户可以通过以下方式访问和操作这些功能 调用 getFeatures、addFeatures 和 deleteFeatures。 "
https://nebula.gl/docs/api-reference/react-map-gl-draw/react-map-gl-draw
我的问题是,如果我使用的是函数式 React 组件而不是基于类的 React 组件,我该如何访问这些方法 getFeatures、addFeatures 和 deleteFeatures?
在他们的示例中,他们使用基于类的组件并在构造函数中设置一个引用变量,然后通过该引用访问这些方法 -
export default class App extends React.Component {
constructor(props) {
super(props);
this.state = {
// map
viewport: DEFAULT_VIEWPORT,// editor
selectedMode: null,selectedFeatureIndex: null,selectable: false,features: featureCollection,};
**this._editorRef = null;**
}
_onDelete = () => {
const { selectedFeatureIndex } = this.state;
if (selectedFeatureIndex === null || selectedFeatureIndex === undefined) {
return;
}
**this._editorRef.deleteFeatures(selectedFeatureIndex);**
};
如果我只是使用功能组件,有没有办法访问这些方法?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。