基本信息
以下是所在类或对象的基本信息。
AMD:
require(["esri/widgets/Editor"], (Editor) => { /* code goes here */ });
ESM:
import Editor from "@arcgis/core/widgets/Editor";
类:
esri/widgets/Editor
继承: Editor > Widget > Accessor
自从:用于 JavaScript 4.11 的 ArcGIS API
用法说明
此小部件提供out-of-the-box 编辑体验,以帮助简化 Web 应用程序中的编辑体验。它会自动识别Map中是否有可编辑的要素图层。如果它识别出它们是可编辑的,则小部件可以使用这些层。此外,还可以通过设置layerInfos 属性来配置Editor
的行为方式。此属性采用一组配置对象,允许您配置这些层的编辑体验。
根据所需的函数,小部件具有不同的workflows,将在下面讨论。
- CreateWorkflow(自 4.23 起已弃用)- 此工作流主要设计用于针对单个函数创建的现有自定义工作流。这个工作流程最终将被删除,取而代之的是,
- CreateFeaturesWorkflow(4.23 中的新函数)- 此工作流程允许同时创建单独的和连续的特征。
- UpdateWorkflow - 此工作流允许您更新和/或删除可编辑要素图层中的现有要素。
从 4.23 版开始,编辑器小部件经历了一些重大更新,包括其 UI 和底层 API。这些更新只是编辑器路线图上的一些改进。随着未来版本的发布,预计会看到更多更新。其中一些更新包括:
- 初始编辑器对话框已被删除并更新为包含一个整合creates 和update 工作流的初始面板。
- 添加了一个额外的create features workflow 以包括连续编辑。现在可以一次连续创建多个相同类型的特征。创建初始草图后,实体形式将与指定的字段元素一起显示。这些字段可以在用户创建新函数时更新。现有的 create workflow 仍然可以使用,但已标记为
deprecated
以支持使用 create features workflow 。这个新的工作流程是为单个和多个特征创建而设计的。 - 捕捉会自动包含在小部件的 UI 中。不再需要通过将编辑器的 snappingOptions 传递给 SnappingControls 的实例来专门设置它。默认情况下,捕捉是禁用的。切换"Enable snapping"以启用它。默认情况下,启用几何约束和要素到要素捕捉。几何约束允许编辑者指定他们希望如何绘制几何图形。例如,如果线需要完全成直角,则捕捉指示器将按此显示,并且可以适当地创建顶点。要素到要素的捕捉允许将新的或现有的几何图形捕捉到其他图层中的几何图形,如
Snapping layer
列表中所示,或者与当前正在编辑的图层中的几何图形进行捕捉。默认情况下,所有可配置捕捉的图层都会自动添加到此列表中。如果需要更新,请直接设置FeatureSnappingLayerSource来更新编辑器的snappingOptions。
已知限制
编辑器小部件尚未与 3.x Editor 小部件中提供的函数完全等同。例如,目前不支持编辑相关的特征属性。此外,不建议在可编辑图层上设置非常低的refreshInterval,因为这可能会降低应用程序的性能。
例子:
// At the very minimum, set the Editor's view
const editor = new Editor({
view: view
});
view.ui.add(editor, "top-right");
相关用法
- JavaScript ArcGIS Editor.classes用法及代码示例
- JavaScript ArcGIS Editor.on用法及代码示例
- JavaScript ArcGIS Editor.snappingOptions用法及代码示例
- JavaScript ArcGIS Editor.allowedWorkflows用法及代码示例
- JavaScript ArcGIS Editor.container用法及代码示例
- JavaScript ArcGIS Editor.layerInfos用法及代码示例
- JavaScript ArcGIS Editor.headingLevel用法及代码示例
- JavaScript ArcGIS Editor.visible用法及代码示例
- JavaScript ArcGIS Editor.when用法及代码示例
- JavaScript ArcGIS Expand.when用法及代码示例
- JavaScript ArcGIS ElementExpressionInfo.expression用法及代码示例
- JavaScript ArcGIS ExtrudeSymbol3DLayer.castShadows用法及代码示例
- JavaScript ArcGIS ExtrudeSymbol3DLayer.clone用法及代码示例
- JavaScript ArcGIS ExpressionContent用法及代码示例
- JavaScript ArcGIS ExpressionInfo.title用法及代码示例
- JavaScript ArcGIS ElevationProfile.profiles用法及代码示例
- JavaScript ArcGIS ElevationLayer.fullExtent用法及代码示例
- JavaScript ArcGIS ElevationLayer layerview-create-error事件用法及代码示例
- JavaScript ArcGIS ElevationLayer.on用法及代码示例
- JavaScript ArcGIS Expand用法及代码示例
- JavaScript ArcGIS ElevationProfile.visibleElements用法及代码示例
- JavaScript ArcGIS ElevationSampler.on用法及代码示例
- JavaScript ArcGIS ElevationLayer用法及代码示例
- JavaScript ArcGIS ElevationProfile.when用法及代码示例
- JavaScript ArcGIS ExtrudeSymbol3DLayer.edges用法及代码示例
注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 Editor。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。