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 (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...