译:ArcGIS JS API 4.x 历史版本及要害更新
4.0 公布工夫: 2016-05
这是 4.x 系列 API 的第一个正式版本。因为之前的 4.x 版本处于测试阶段,因而此处不思考记录它们。
4.1 公布工夫: 2016-09
- WebMap.version 属性重命名为 WebMap.sourceVersion。
- WebScene.version 属性重命名为 WebScene.sourceVersion。
- ClosestFacilityParameters.returnPolygonBarriers 属性重命名为 ClosestFacilityParameters.returnPolygonBarriers。
- FeatureLayer.createQueryParameters 属性重命名为 FeatureLayer.createQuery。
- Popup 的 dockOptions.position 属性值当初除了承受字符串之外,也承受函数。
- NavigationToggle 已被增加到 SceneView 的 default.widgets (默认组件) 之中。
- The Geoprocessor.getResultImageLayer() 办法被 Geoprocessor.getResultMapImageLayer() 代替。对于签名的变更,请查看 SDK 文档。
- GroupLayer、Map 和他们的子类中的
layer-add
、layer-remove
和layer-reorder
事件已被移除,取而代之的是esri/core/Collection
的 change 事件。
4.2 公布工夫: 2016-12
- VectorTileLayer 的
ACCESS_TOKEN
属性已被移除。 - 为了进步安全性,浏览器开始在不平安的页面上阻止 Geolocation API,这意味着定位按钮将无奈在不平安的网页(即 http 协定的链接)上应用。谷歌浏览器首先在版本 50(2016 年 4 月)中实现了这个性能。苹果也打算在 Safari 10(2016 年 9 月)中实现了这一点。Mozilla/Firefox 正打算做同样的事件。在 4.0 和 3.17 版本中,JSAPI 不再在 Chrome 浏览器中显示非平安 Web 应用程序的定位按钮。从版本 4.2 和 3.19 开始,JSAPI 不再在浏览器上任何不平安的网页程序中显示定位按钮。请留神,localhost 被认为是“潜在平安的”,可用于便捷测试。
4.3 公布工夫: 2017-03
sizeRendererCreator.createVisualVariable()
重命名为sizeRendererCreator.createVisualVariables()
,因为它的返回值类型改成数组了。
4.4 公布工夫: 2017-07
-
从 4.4 版开始,
locator.locationToAddress()
办法返回一个正确的AddressCandidate
。此谬误修复会影响五个AddressCandidate
属性中的两个:address
和attributes
。请留神,其余 AddressCandidate 属性(extent
、location
和score
) 没有变动。- 在 4.4 之前,locationToAddress() 谬误地返回一个始终具备空
attributes
属性的对象,address
字符串是一个对象。从 4.4 开始,address
属性是一个字符串,attributes
属性将不再为空。 - 指定一个字段,如:
CountryCode
,当初的写法是attributes.CountryCode
。之前的版本中写法为address.CountryCode
。 - 示例 Intro to popups 为了反映此更新曾经更改。
- 在 4.4 之前,locationToAddress() 谬误地返回一个始终具备空
- Esri icon font 款式和代码已更新,局部代码曾经被更改或用于新图标字体。
ViewAnimation.stop()
不再返回ViewAnimation
promise.Symbol3DLayer
的 type 属性值调整了命名格调,为了和残余的 API 保持一致,当初应用 keaba-casing 命名格调。- 三维 WebStyleSymbols 的方向属性更新了。当初符号的前端指向 y 轴方向(北)。将
ObjectSymbol3DLayer
的 heading 属性设置为 0,符号将指向北;设置为 180,则符号指向南。与旧款式相比,signs
和signals
以及Street scene
方向扭转了 180 度,Transportation
扭转了 90 度。 - 从版本 4.x 开始,在图层中传输 token 参数的举荐办法是应用
IdentityManager.registerToken()
。在此之前的 3.x 中,能够通过 1) 图层的 token 属性,或者 2) 将 token 参数追加到图层 URL 的开端来将 token 参数传递给图层。 Search
组件的sources
属性有一个新的filter
属性,它取代了当初已弃用的searchQueryParams
、suggestQueryParams
和searchExtent
属性。- 如果开发自定义组件,则应更新配置设置以反映
"jsxFactory": "tsx"
,而不是"reactNamespace":"jsxFactory"
。这在 TypeScript 设置指南主题中进行了探讨。 - 对于传递到
external renderers
的光源值,环境光源和漫反射射光源之间的均衡已更改。这可能会导致与应用external renderers
渲染的对象的外观略有不同。新的光源值示意线性色彩空间中的色彩 / 强度,并针对灰度系数值为 2.1 的伽玛校对渲染进行了优化。 - 在版本 4.4 中,如果单击的地位未与配置了
popup template
的因素相交,则 view.click 事件将敞开弹出窗口。如果关上了蕴含自定义内容的弹出窗口,您可能心愿禁用此默认行为,或者在 view.click 时使其放弃关上状态。为了实现这个,您必须在单击事件对象上调用stopPropagation()
。
4.5 公布工夫: 2017-09
- 所有
render
、symbol
、symbol layer
类的type
属性不再是只读。 -
更改了许多
renderer
的type
值,以实现对立的 kebab-casing 命名格调:UniqueValueRenderer.type
值uniqueValue
改为unique-value
。ClassBreaksRenderer.type
值classBreaks
改为class-breaks
。PointCloudClassBreaksRenderer.type
值pointCloudClassBreaksRenderer
改为point-cloud-class-breaks
。PointCloudRGBRenderer.type
值pointCloudRGBRenderer
改为point-cloud-rgb
。PointCloudStretchRenderer.type
值pointCloudStretchRenderer
改为point-cloud-stretch
。PointCloudUniqueValueRenderer.type
值pointClo
udUniqueValueRenderer改为
point-cloud-unique-value`。SimpleMarkerSymbol.type
值simple-marker-symbol
改为simple-marker
。SimpleLineSymbol.type
值simple-line-symbol
改为simple-line
。SimpleFillSymbol.type
值simple-fill-symbol
改为simple-fill
。PictureMarkerSymbol.type
值picture-marker-symbol
改为picture-marker
。PictureFillSymbol.type
值picture-fill-symbol
改为picture-fill
。TextSymbol.type
值text-symbol
改为text
。PointSymbol3D.type
值point-symbol-3d
改为point-3d
。LineSymbol3D.type
值line-symbol-3d
改为line-3d
。PolygonSymbol3D.type
值polygon-symbol-3d
改为polygon-3d
。MeshSymbol3D.type
值mesh-symbol-3d
改为mesh-3d
。LabelSymbol3D.type
值label-symbol-3d
改为label-3d
。WebStyleSymbol.type
值web-style-symbol
改为web-style
。
- 当在 API 4.5 保留场景到 Portal 10.5.1 或者更老的版本时,
ElevationLayer
总是可见的。 Search sources
的zoomScale
属性主动应用 scale 属性。在之前的版本中,只能缩放到特定比例尺,如果搜寻后果没有相干的 extent 值的话。- Search 组件的
search
办法返回一个 Promise 对象,当 resolve 时,Promise 返回一个相似于search-complete
事件的SearchResponse
对象。 - Search 组件及其相应的 ViewModel 的
suggest()
办法都返回一个 Promise,当 resolve 时,Promise 返回相似于suggest-complete
事件的SuggestResponse
对象。 - 移除了
SearchViewModel
的cancelSuggest
办法。 - 移除了 Graphic 的
getEffectivePopupTemplate
办法。如果 Graphic 的popupTemplate
未定义,将应用 Graphic 所在图层的popupTemplate
。 - 移除了 ElevationLayer 的 minScale 和 maxScale 属性。
4.6 公布工夫: 2017-12
attributionText
和itemDelimiter
曾经从 AttributionViewModel 挪动到 Attribution 组件。- 部分场景的 altitude 限度不再无效。
SceneView.goTo
和MapView.goTo
返回一个 Promise,不再是以前的 ViewAnimation.- Search 组件
searching
属性曾经被state
代替。 Query
类的relationParam
属性被重命名为 relationParameter。RelationParameters
类的relationParam
属性被重命名为 ralationParamater。- VectorTileLayer 的 url 属性值类型为
String
。当应用 JSON 对象初始化 VectorTileLayer 时,应用 VectorTileLayer 的 style 的属性。
4.7 公布工夫: 2018-04
AttributionItem
的 layers 属性 改为 layer。- 移除了
ClassBreaksRenderer
的classificationMethod
。 - 移除了
LayerList
和LayerListViewModel
的createActionsFunction
属性,应用listItemCreatedFunction
代替。 - 移除了
draw-complete
的graphic
属性。 - 移除了
LayerSymbol3D
的styleOrigin
属性。 - 移除了所有类的
then()
办法,当用到 Promise 时,应用when()
代替。
4.8 公布工夫: 2018-07
- 更正了
TemplateOptions
的format
和layout
,放弃和文档统一。 - 移除了
pointSizeAlgorithm
的minSize
属性。 FeatureLayerView.queryFeatures()
和CSVLayerView.queryFeatures()
当初返回一个FeatureSet
。SketchViewModel.update()
当初接管graphic
,而不是geometry
。SketchViewModel
的draw-start
被重命名为create-init
,draw-cancel
被重命名为create-cancel
,draw-complete
被重命名为create-complete
,update-start
被重命名为update-init
。always()
办法和otherwise()
办法在 4.7 版本中曾经弃用,在 4.8 版本中将移除。- 移除了
Search
组件和SearchViewModel
中的defaultSource
属性,应用defaultSrouces
代替。 - 在 3D 模式下,在间断相机挪动期间,具备大量数据的
FeatureLayer
图层的更新可能会暂停,直到间断相机挪动实现。 - CSS 类
.esri-widget-button
已重命名为.esri-widget--button
。 - Action 类已被弃用,当初应该应用 ActionButton 或 ActionToggle 代替。
- 若要拜访 Graphic 的 PopupTemplate,请应用
getEffectivePopupTemplate
办法。在版本 4.8 之前,如果未在图形上定义 popupTemplate,它将应用 Graphic 所在图层中的 popupTemplate。 - 删除了对应用 Bower 将 ArcGIS API for JavaScript 装置到本地工程中的反对。咱们倡议迁徙到 npm 以利用更多 Web 开发工具。
4.9 公布工夫: 2018-09
- Bookmark 类从
esri/widgets/Bookmarks/Bookmark
挪动到了esri/webmap/Bookmark
。 FeatureLayer.queryFeatureAttachments()
办法已移除,应用FeatureLayer.queryAttachments()
代替。- 在
Renderers
和visualVariables
中不能再应用 Function 代替字段,能够改为应用valueExpression
。 - 移除了 esriConfig 的
request
的属性:corsDetection
,corsDetectionTimeout
,corsEnabledServeres
,forceProxy
和useCors
属性。 - 移除了
esriRequest
办法中的requestOption
参数中的allowImageDataAccess
属性。MapImageLayer、BingMapsLayer、和 OpenStreetMap 参数中allowImageDataAccess
属性也移除了。 - 移除了 ClassBreaksRenderer 的
isMaxInclusive
属性。 - 移除了 Search 组件 和 SearchViewModel 中的
popupOpenOnSelect
属性。 - 如果须要在跨源申请中蕴含 Cookie 和 Authorization 等凭据,能够在 esriConfig 的 request 属性中设置新的
trustedServers
属性。在版本 4.9 之前,能够通过将corsEnabledServers
参数的withCredentials
属性设置为 true 来解决此问题。 - CSS 款式类名
.esri-widget__header
更名为.esri-widget__heading
。 - 如果指标没有 z 值,则
SceneView.goTo()
办法将查问指标地位的高程。这意味着即便 animate 参数设置为 false,promise 也不会立刻返回。
4.10 公布工夫: 2018-12
Esri Icon Font
二维 MapView 中的CalciteWebCoreIcons
已被重命名为calcite-web-icons
。FeatureLayer.capabilities.query
的supportsAttachments
属性已被移除。- 应用客户端因素创立 FeatureLayer 须要为每个字段设置
type
属性。 FieldOptions
类曾经被移除,其内容曾经交融进FieldConfig
。- 为了反对单击地图后手动显示 Popup,已移除
event.stopPropagation()
办法,新的autoOpenEnabled
属性默认为false
. IdentityManagerBase
的所有文档曾经交融到IdentityManager.
4.11 公布工夫: 2019-03
-
FeatureLayer.outFields 的默认行为已更改。它不再主动蕴含图层标注、渲染、编辑和高程信息所需的字段。如果没有显示设置,它当初默认值为 null。
- 通常不须要指定 outFields,API 会主动确定要获取的字段。然而,对于在自定义性能中应用的字段,则可能仍须要应用 outFields 属性显式增加这些字段。
- 若要理解哪些字段在客户端可用,请应用新的
availableFields
属性。它蕴含为每个因素获取的属性字段列表,这个列表包含图层标注、渲染、高程信息以及应用 FeatureLayer.outFields 属性增加的字段。LayerView 实现更新后,将主动给availableFields
属性赋值。
Query.units
属性的默认值已调整为null
, 之前是meters
。Sublayer.createFeatureLayer()
当初返回解析为 FeatureLayer 的 promise,而不是 FeatureLayer。- Autocasting 不再反对 Mesh 几何体。
- 扭转了
esri/geometry/support/MeshMaterial
中的透明度解析形式。以前,低于 0.1 的值将被解释为齐全通明(即齐全看不见),当初此阈值已调整为 0.5。如果须要旧行为,当初能够应用 alphaCutoff 属性显式更改阈值。 - 将
select
办法从FeatureTemplates
中移除,并退出FeatureTemplatesViewModel
。 - 移除了
esri/geometry/ScreenPoint
类。 - 移除了
MapNotesLayer
的Legend
反对。 - 从所有图层类中删除了
token
属性。在图层上传递token
的举荐办法是应用IdentityManager.registerToken()
或应用esriConfig.request.interceptors
。 - 从
Feature widget
和FeatureViewModel
中删除了view
属性。 MapImageLayer.getImageUrl()
办法当初返回 null。AttachmentQuery
类的definitionExpression
属性重命名为where
。RelationshipQuery
类的definitionExpression
属性重命名为where
。TemplateItemGroup.name
重命名为TemplateItemGroup.label
。-
FeatureLayerSearchSource
类重命名为LayerSearchSource
。- 重命名的 LayerSearchSource 类当初采纳
Layer
属性,而不是FeatureLayer
。 Directions.SearchProperties
对象中的sources
属性当初采纳LayerSearchSource
,而不是FeatureLayerSearchSource
。
- 重命名的 LayerSearchSource 类当初采纳
-
作为增加 3D 绘图反对的一部分,2D 绘图类有所调整,例如:
esri/views/2d/draw/Draw
已挪动到esri/views/draw/Draw
。esri/views/2d/draw/DrawAction
已挪动到esri/views/draw/DrawAction
。esri/views/2d/draw/PointDrawAction
已挪动到esri/views/draw/PointDrawAction
。- 其余相似调整此处略过不译。
-
局部与 Popup 相干的已被挪动、重命名或移除,例如:
esri/support/ContentElement/Media/Chart
类已被移除。esri/support/ContentElement/Media/Media
类已被移除。esri/support/ExpressionInfo
被挪动到esri/popup/ExpressionInfo
。- 其余相似调整此处略过不译。
- 一个图形(Graphic)一次在于一个 GraphicsLayer 中。将图形增加到 GraphicsLayer 时,如果该图形已在另一个 GraphicsLayer 中,则该图形将挪动到指标 GraphicsLayer。
-
二维高亮性能曾经通过三种形式改良:
- 柔和、抗锯齿的边缘。
- 升高了默认不透明度,当初与 3D 中应用的默认设置统一。
- 批改了覆盖率算法,当初突出显示线和面的通明局部。
4.12 公布工夫: 2019-07
ClassBreaksRenderer.getClassBreakInfo()
已由同步函数改为异步函数。UniqueValueRenderer.getUniqueValueInfo()
已由同步函数改为异步函数。- 作为性能优化的一部分,不再显示不遵循顺时针程序的谬误多边形。多边形环应该是顺时针,逆时针环则被视为孔。
- 将
locatorTask.locationToAddress()
参数从(location, distance, requestOptions)
改为现(params,requestOptions)
。params 对象有两个属性:location
和locationType
。 SceneLayerView
中的查询方法queryExtent()
、queryFeatureCount()
、queryFeatures()
和queryObjectIds()
须要返回的字段须要提前应用SceneLayer.outFields
定义。- 更改了 SceneView 中色彩的行为,使其与 MapView 保持一致。如果图形的色彩值设置为 null,则它将显示为通明。
- 当初为 3D 标签类上的 where 子句提供了残缺的 SQL 反对。旧版 where 子句未实现严格的 SQL 语法,可能会中断。
- 将类
Search
、SearchLayer
和SearchLayerField
从webscene.applicationProperties
挪动到webdoc.applicationProperties
模块,这是 WebMap 和 WebScene 的通用模块。 - 移除了 Popup 的
actionsMenuEnabled
属性。 - 移除了
DotDensityRender
中的dotBlendingEnabled
和referenceDotValue
属性。 - 移除了
Search
组件和Locator
组件中的distance
参数,因为他曾经被启用且 World Geocoding Service 不再反对。 - 移除了 Search 组件的
localSearchOptions
和locationToAddressDistance
属性,他们在版本 4.11 中曾经启用。 - 从基类 Symbol3DLayer 中删除了
material
属性。此更新使得 Symbol3DLayer 的子类实现了独立的material
属性。 - 从
ImageServiceIdentifyParameters
中移除了noData
属性。 - 从
TimeInfo
类中移除了timeExtent
属性,应用fullTimeExtent
属性代替。 SizeSlider
、ColorSlider
、ColorSizeSlider
从esri/widgets/
门路挪动到esri/widgets/smartMapping/
门路。PopupTemplate
的content
和title
不能再应用通配符进行设置,例如 *。相同,请将弹出窗口的defaultPopupTemplateEnabled
属性设置为 true。PopupTemplate
的content
和title
属性将不再反对格式化函数DateString
、DateFormat
和NumberFormat
,能够应用FieldInfo
的FieldInfoFormat
代替格式化函数。ElevationLayer.fetchTile()
办法中的noDataValue
参数曾经嵌入到options
参数中。PopupTemplate
的content
和title
属性不再反对参数化的函数。- 当
PathSymbol3DLayer
的height
和width
属性都没有设置时,符号将不会渲染进去。之前的版本中如果没有设置size
参数,符号将会依照宽和高别离为 1 米进行渲染。
4.13 公布工夫: 2019-10
StretchRenderer
曾经被移除,改为应用RasterStretchRenderer
。-
Geoprocessor
类曾经被标准化,这须要做一些扭转:- 移除了
updateDelay
属性。 - 移除了
cancelJobStatusUpdates()
办法。 - 一旦工作胜利提交到服务器,
submitJob()
办法就会立刻返回蕴含JobInformation
的 Promise。以前,只有在申请胜利后能力返回 Promise。当初,您能够应用waitForJobCompletion()
办法来获取工作实现告诉和工作状态状态。 getResultMapImageLayer()
办法当初返回一个 Promise,解析后返回 MapImageLayer。以前是间接返回 MapImageLayer。- 当
getResultData()
办法从 GPFeatureRecordSetLayer 或 GPRecordSet 申请数据时,当检测到 url 属性时,它会返回 DataFile。
- 移除了
- 从 AreaMeasurement2D 和 DistanceMeasurement2D 小部件及其 ViewModel 中删除了
mode
属性。 - 从
ImageServiceIdentifyParameters
中删除了pixelSizeX
和pixelSizeY
属性。请改用pixelSize
属性。 - 从
ImageryLayer
中移除了domainFields
属性,改为应用fields
属性。 - 从
ImageryLayer
中移除了hasRasterAttributeTable
和rasterAttributeTable
属性,应用serviceRasterInfo.attributeTable
代替。 - 从 Sketch 和 SketchViewModel 中删除了
reset
办法。在相应的类上应用cancel
办法代替。 - 移除了
SliderViewModel
类的value-change
事件。 - 删除了直方图组件条形图上的默认
tabindex
。所有实现直方图的滑块组件(包含直方图范畴滑块和所有智能制图滑块)都受此更改的影响。若要按 Tab 键浏览直方图条形图,开发人员应应用barCreatedFunction
将每个条形图元素的 tabindex 设置为 0。 - 移除了
StreamLayer
的filter
属性和updateFilter
属性。 - 从
StreamLayerView
中移除了connect
、disconnect
、graphics
、updateFilter
属性。
4.14 公布工夫: 2019-12
- 当事件在 View 上的流传(事件冒泡)进行时,任何派生事件的流传都将进行。例如,当对
immediate-click
事件调用 stopPropagation() 时,不再触发click
和double-click
事件。当在pointer-up
事件上调用 stopPropagation() 时,不再触发immediate-click
、click
和double-click
事件。这使得实现事件处理更容易,因为程序通常一次只想解决其中一种事件类型。 - FeatureLayerView.queryFeatures 和 GeoJSONLayerView.queryFeatures 后果将不再蕴含 2D MapView 中的 z 值,即便 query.returnZ 设置为 true。
Sketch
具备一个名为 creationMode 的新属性,默认值为continuous
。即默认状况下,容许间断创立具备雷同几何类型的图形。这与以前版本中微件的默认行为不同,在晚期版本中,只能够一次创立一个图形。- 要在图形更新操作期间应用 Sketch 组件抉择或勾销抉择多个顶点,咱们当初应用 Shift + 左键单击组合,而不是在顶点上按 Ctrl + 左键单击。
- 2D 测量组件将基类从
esri-area-measurement-3d
更改为esri-area-measurement-2d
,以及从esri-direct-line-measurement-3d
更改为esri-distance-measurement-2d
。 - 从
MapImageLayer
中删除了getImageUrl()
办法。此办法自版本 4.11 起已弃用。咱们倡议改为扩大BaseDynamicLayer
。 - 从 Slider 和 HistogramRangeSlider 中删除了
value-change
和value-change
事件。这些事件自版本 4.13 起已弃用。咱们倡议监听 values 属性或改用其余组件事件。 - 删除了印地语作为受反对的区域设置。
- 与 ArcGIS 工作流管理器(ArcGIS Workflow Manager)相干的类已被移除。从版本 4.13 开始,它们被标记为已弃用。
- HTML sanitizer 已增加到所有组件中,以依据 ArcGIS Online 反对的 HTML 标准对字符串进行清理和本义。这可能会导致删除在 PopupTemplate.content 或其余组件中设置的 HTML。
4.15 公布工夫: 2020-04
- API 默认从 4.15 开始返回原生 Promise。
- 不再全局蕴含 dgrid 款式。如果在 Web 应用程序中应用 dgrid,则须要独自援用样式表。
- 删除了
ImageMeshColor
,该类自 4.11 版起已弃用。改为在MeshMaterial.colorTexture
上设置MeshTexture
。 - 删除了自版本 4.10 起已弃用的
requireUtils
。请改用 promiseUtils.create()。 - 删除了
ValueMeshColor
,该类自版本 4.11 起已弃用。请改用 MeshMaterial.color。 - 从
StreaLayer
中删除了capabilities
和version
属性。 - Sketch 组件和 SketchViewModel 上的更新事件不再具备 cancel 状态。在更新事件上的参数
aborted
示意更新已勾销。 attachmentInfos
属性已从AttachmentsContent
中删除。它当初通过Attachments
组件进行解决,并且能够通过其 ViewModel 进行拜访。- Workflow.data 属性当初返回 CreateWorkflow 或 UpdateWorkflow 援用。
- Editor 组件和 EditorViewModel 的 activeWorkflow 属性当初返回对 CreateWorkflow 或 UpdateWorkflow 的援用。
- 工作流(Workflow)编辑当初在编辑类中援用。
4.16 公布工夫: 2020-07
- 删除了 Dojo Promise。默认状况下,原生 Promise 已激活。不再反对 has 标记
"esri-native-promise"
。 - 删除了对 Dojo 申明模块(
declare
)的应用。这意味着具备利用 API 类框架和多重继承的类的利用将进行工作。举荐的办法是应用 mixins with Accessor。 - TileImageryLayer 将被移除并替换为 ImageryTileLayer。
- 当初,如果两个工夫范畴不相交,则 TimeExtent 的
intersection
办法将返回一个 TimeRange 实例,该实例的start
和end
属性的值为undefined
。 - 当 View 的 container 元素的 css 款式可见性设置为暗藏(
visibility:hidden
)时,视图的suspended
属性将设置为false
。视图处于暗藏状态,但它依然在渲染和更新数据。 - CIMSymbol 的数据属性当初仅反对 CIMSymbolReference JSON。CIMSymbol JSON 应该在
cimSymbol.data.symbol
上利用。
4.17 公布工夫: 2020-10
- 为了更好地治理内存,
view.destroy()
将销毁所有附加的资源,包含 map。为了避免 map 被销毁,能够在调用 view.destroy() 之前为 map 赋新值。
// 将销毁 view 以及所有附加的资源
view.destroy();
// 为 map 赋新值以避免被销毁
const map = view.map;
view.map = null;
view.destroy();
- ActionButton 和 ActionToggle 类当初能够正确地将其类型实现为
button
或toggle
。在此之前,它被设置为string
。 - Feature 组件以及其相干的 ViewModel 中的 g
oToMedia()
办法已重命名为setActiveMedia
。 - WebMap 的
tables
属性当初采纳图层汇合,而不是对象数组。 TimeSlider.loop
属性当初的默认值为false
,而不是true
。- 所有图层和表的服务元数据当初都从
FeatureServer/layers/REST
端点集中获取,而不是每个图层从其专用端点(例如FeatureServer/<layerID>
)获取其元数据。 StreamLayer.maximumTrackPoints
在 4.15 版中已弃用,现已删除。请改用StreamLayer.purgeOptions.maxObservations
。- 应用 applyEdits 将具备 z 值的图形增加到具备
hasZ:false
的因素图层中,不再以静默形式删除 z 值,当初会引发谬误。 -
对 Popup 进行了性能改良。在此版本之前,无需在 FeatureLayer 或 PopupTemplate 上指定 outFields 即可拜访弹出窗口的因素的 geometry。始终倡议设置 outFields,但不是必须的。今后,如果须要拜访根底因素的 geometry,则必须设置 outFields。如果应用蕴含弹出窗口的 WebMaps,这同样实用。如果弹出窗口没有用于 geometry 的 Arcade 表达式,则当初须要拜访 WebMap 的图层或其 PopupTemplate 并设置 outFields。
4.18
公布工夫: 2020-12
- 不反对 IE11/Edge 旧版。对 Internet Explorer 11 和 Edge 旧版的反对在版本 4.16 中已弃用,并在版本 4.18 中完结。
- MapView 和 SceneView 上
takeScreenshot()
办法的默认格局已更改为 png,之前是 jpg。 mediaType
属性已从 OGCFeatureLayer 中删除。所有对元数据和数据内容的申请都将应用f=json
url 参数进行。FeatureForm.getValues()
当初将始终返回具备更新属性的对象。在此之前,如果没有提供因素,它将返回 null。- 如果编辑因素上没有现有属性,则
FeatureForm.getValues()
将返回undefined
。这是为了与无效的null
辨别开来。 FeatureTable
组件不再应用图层的最大记录计数来确定分页大小。它会主动默认为 50 条记录,除非图层蕴含的记录少于此值。如果是这样,它将采纳此计数并为其设置分页。- 更新了
intl.onLocalChange()
的回调以返回LocaleChangeCallback
而不是函数。 - Sketch 组件
defaultCreateOptions
的默认模式已更改为click
而不是hybrid
。 -
RouteParameters.barriers
属性已被删除。它已从版本 4.11 开始弃用。请改用pointBarriers
、polygonBarriers
和polylineBarriers
。4.19
公布工夫: 2021-05
- IdentityManager 的
setRedirectionHandler
办法和useSignInPage
属性在 4.19 中删除。这是因为 Enterprise Portal 利用从行将公布的 10.9.1 版本开始不再应用此性能。 - InputField 和 FieldElemenet 提醒属性已更新为显示 TextAreaInput 和 TextBoxInput 的文本和数字输出的 placeholder。在此之前,将鼠标悬停在输出字段上时,在 FieldElement 提醒中设置的任何内容都将显示为工具提醒。
- 为了禁用 Popup 中的任何默认 action,当初须要将 includeDefaultActions 设置为 false。在 4.19 版之前,这不是必须的。删除默认 action(例如 ” 缩放到 ” 按钮)所需的只是间接设置 Popup 的 actions。这个设置将使“缩放到”按钮不显示。
- FieldElement 输出类型
Input
和TextInput
已被删除,以便仅公开其子类类型。这些子类类型包含TextAreaInput
、TextBoxInput
和DateTimePickerInput
。除了这三种类型外,4.19 中还包含一些新的输出类型。其中包含BarcodeScannerInput
、RadioButtonsInput
和ComboBoxInput
。Input
和TextInput
未删除任何属性或性能。这两个类的属性当初能够间接从其子类拜访。 esri/layers/support/AttachmentInfo
已移至esri/rest/query/support/AttachmentInfo
。尽管较旧的类依然能够应用 JavaScript,但须要更新新类的援用门路,以便应用 TypeScript 取得正确的类型。@renderable
装璜器已在 esri 组件帮忙程序类(esri widgets helper class)中弃用并移除。开发人员不须要做什么,因为小组件仍应按预期工作。- 如果扩大实现 Accessor 的类,则在定义 Accessor 属性时不再须要将
dependsOn
与@property
润饰器一起应用。 - 自定义从新居中组件示例已从 SDK 示例移至 GitHub 仓库 jsapi-resources GitHub。
- 从以下 task 类中删除了
requestOptions
属性(requestOptions 仍可用作可选办法参数):ClosestFacilityTask
、FindTask
、GeometryService
、IdentifyTask
、ImageIdentifyTask
、ImageServiceIdentifyTask
、PrintTask
、RouteTask
、ServiceAreaTask
。 -
以下类、办法、属性和事件已在至多 2 个版本中弃用,现已从 API 中删除:
类 / 属性 / 办法 / 事件 备用选项 弃用版本 ProjectParameters.outSR
ProjectParameters.outSpatialReference
4.4 BasemapToggle.titleVisible
BasemapToggle.visibleElements.title
4.15 reaMeasurement2DViewModel.clearMeasurement()
AreaMeasurement2DViewModel.clear()
4.16 AreaMeasurement2DViewModel.newMeasurement()
AreaMeasurement2DViewModel.start()
4.16 AreaMeasurement3DViewModel.clearMeasurement()
AreaMeasurement3DViewModel.clear()
4.16 AreaMeasurement3DViewModel.newMeasurement()
AreaMeasurement3DViewModel.start()
4.16 DistanceMeasurement2DViewModel.clearMeasurement()
DistanceMeasurement2DViewModel.clear()
4.16 DistanceMeasurement2DViewModel.newMeasurement()
DistanceMeasurement2DViewModel.start()
4.16 DirectLineMeasurement3DViewModel.clearMeasurement()
DirectLineMeasurement3DViewModel.clear()
4.16 DirectLineMeasurement3DViewModel.newMeasurement()
DirectLineMeasurement3DViewModel.start()
4.16 PrintTemplate.preserveScale
PrintTemplate.scalePreserved
4.16 SliceViewModel.clearSlice
SliceViewModel.clear()
4.16 SliceViewModel.newSlice
SliceViewModel.start()
4.16
注:本文档会始终放弃更新。尽量同步更新。
参考资料
[1] Breaking changes . https://developers.arcgis.com/javascript/latest/breaking-chan…
[2] https://developers.arcgis.com/downloads/#javascript