Portal 类是 GeoScene Enterprise 门户的一部分,它提供了一种方法来构建使用 GeoScene Online 或 GeoScene Enterprise 门户中内容的应用程序。GeoScene Enterprise 是 GeoScene 软件,客户可以在本地或云中进行部署。GeoScene Online 是 GeoScene 的软件即服务产品,其将 GIS 表示为服务,并使用与 GeoScene Enterprise 相同的技术实现。
Portal API 允许应用程序开发人员使用 GeoScene Online 或 GeoScene Enterprise 门户中托管的用户、群组和内容。该 API 允许开发人员构建支持使用 Web 地图进行共享和协作的 Web、移动和桌面应用程序。组织开发人员还可使用 API 为其用户构建自定义应用程序。
Portal 类提供了当前用户 (匿名或登录) 看到的门户视图。它包括此门户的名称、徽标、专题项目和支持协议 (http 与 https) 之类的信息。如果用户未登录,则此调用将返回门户的默认视图。如果用户已登录,则返回的门户视图将特定于用户所属的组织。门户的默认视图取决于用户的区域性,该区域性是从用户的个人资料中获取的。
如果在加载门户之前未设置 url,则 API 默认为 geosceneConfig.portalUrl。在某些情况下,可能需要多个门户实例。在这些情况下,有几个不同的选项需要考虑。
- 在 PortalItem 中设置新的门户实例,并设置门户的 url。
Layer.fromPortalItem({ portalItem: { id: "e691172598f04ea8881cd2a4adaa45ba", // autocastable to Portal portal: { url: "https://thePortalUrl" } } });
- 在将单独的门户实例传递到 PortalItem 的 portal 属性之前,请先创建这些实例。
let portalA = new Portal({ url: "https://www.exampleA.com/geoscene" // First instance }); let portalB = new Portal({ url: "https://www.exampleB.com/geoscene" // Second instance }); let item = new PortalItem({ id: "e691172598f04ea8881cd2a4adaa45ba", portal: portalA // This loads the first portal instance set above }); item.load();
可以调用 Portal 实例上的 when() 方法来执行只能在已加载 Portal 后运行的进程。
// load the Portal and PortalQueryParams modules
require(["geoscene/portal/Portal",
"geoscene/portal/PortalQueryParams"
], function(Portal, PortalQueryParams) {
portal = new Portal();
// Setting authMode to immediate signs the user in once loaded
portal.authMode = "immediate";
// Once portal is loaded, user signed in
portal.load().then(function() {
console.log(portal);
// Create query parameters for the portal search
// This object autocasts as new PortalQueryParams()
let queryParams = {
query: "owner:" + portal.user.username,
sortField: "numViews",
sortOrder: "desc",
num: 20
};
// Query the items based on the queryParams created from portal above
portal.queryItems(queryParams).then(createGallery);
});
});
构造函数
属性概述
名称 | 类型 | 描述 | 类 |
---|---|---|---|
String | 组织的访问级别。 更多详情 | Portal | |
Boolean | 如果为 | Portal | |
String | 用于在用户尝试访问安全资源时处理身份验证的身份验证模式。 更多详情 | Portal | |
String[] | 在发出跨域资源共享 (CORS) 请求以访问受 web 层身份验证保护的服务时,可以将凭据发送到的可信服务器数组。 更多详情 | Portal | |
String | 当 useVectorBasemaps 不为 true 时,定义应在 BasemapGallery 中显示的底图的查询。 更多详情 | Portal | |
String | Bing 密钥,用于使用 Bing 地图的 web 地图。 更多详情 | Portal | |
Boolean | 指示组织是否可以在市场中列出应用程序。 更多详情 | Portal | |
Boolean | 指示组织是否可以在市场中列出数据服务。 更多详情 | Portal | |
Boolean | 指示组织是否可以在市场中列出预先配置的项目。 更多详情 | Portal | |
Boolean | 指示组织是否可以在没有客户请求的情况下在市场中提供直接购买。 更多详情 | Portal | |
Boolean | 如果为 | Portal | |
Boolean | Bing 密钥可以与公共共享,并作为门户描述调用( | Portal | |
Boolean | 若为 | Portal | |
Boolean | 指示是否允许配置了企业 IDP 的组织能够打开或关闭 GeoScene 登录。 更多详情 | Portal | |
Boolean | 指示是否允许配置了企业 IDP 的组织能够打开或关闭企业登录。 更多详情 | Portal | |
String | 此查询可标识包含用于在地图查看器中呈现的颜色集的组。 更多详情 | Portal | |
Boolean | 指示是否允许组织禁用评论。 更多详情 | Portal | |
Date | 组织的创建日期。 更多详情 | Portal | |
String | 默认区域性(语言和国家/地区)信息。 更多详情 | Portal | |
String | 门户的自定义基准 URL。 更多详情 | Portal | |
String | 类的名称。 更多详情 | Accessor | |
Basemap | 用于门户的默认底图。 更多详情 | Portal | |
Basemap | 定义 apiKey 时,用于门户的默认开发人员底图。 更多详情 | Portal | |
Extent | 用于门户的默认范围。 更多详情 | Portal | |
Basemap | 用于门户的默认矢量底图。 更多详情 | Portal | |
String | 组织/门户的描述。 更多详情 | Portal | |
String | 定义 apiKey 时,定义应在 BasemapGallery 中显示的底图的查询。 更多详情 | Portal | |
Boolean | 布尔值,用于指示是否选择加入 GeoScene 用户体验改进 (EUEI) 计划。 更多详情 | Portal | |
Object[] | 门户的精选群组。 更多详情 | Portal | |
String | 定义精选群组的查询。 更多详情 | Portal | |
String | 该查询可标识包含图库精选项目的群组。 更多详情 | Portal | |
Boolean | 指示组织是否具有内容类别。 更多详情 | Portal | |
Object | 门户提供的帮助服务。 更多详情 | Portal | |
String | 包含要显示在主页特色内容中的群组。 更多详情 | Portal | |
Number | 可在主页上显示的特色项目的数量。 更多详情 | Portal | |
Number | 门户用于 HTTP 通信的端口。 更多详情 | Portal | |
Number | 门户用于 HTTPS 通信的端口。 更多详情 | Portal | |
String | 拥有此门户的组织的 ID。 更多详情 | Portal | |
String | 调用 IP 的国家/地区代码 (仅适用于 GeoScene Online)。 更多详情 | Portal | |
Boolean | 指示门户是否为组织。 更多详情 | Portal | |
Boolean | 指示门户是否为本地。 更多详情 | Portal | |
Boolean | 指示门户是否为只读模式。 更多详情 | Portal | |
String | 此查询可标识包含编辑模板的组。 更多详情 | Portal | |
Boolean | 指示门户的资源是否已加载。 更多详情 | Portal | |
Error | 如果加载时发生错误,则返回 Error 对象。 更多详情 | Portal | |
String | 表示 load 操作的状态。 更多详情 | Portal | |
Object[] | 加载时发生的警告列表。 更多详情 | Portal | |
Number | 为组织用户颁发的令牌的最大有效性 (以分钟为单位)。 更多详情 | Portal | |
Date | 上次修改组织的日期。 更多详情 | Portal | |
String | 组织的名称。 更多详情 | Portal | |
String | 门户主机的 URL。 更多详情 | Portal | |
String | 门户模式。 更多详情 | Portal | |
Object | 特定于组织的属性,例如,“联系我们”链接。 更多详情 | Portal | |
String | 组织的区域。 更多详情 | Portal | |
String | 门户的 REST URL,例如,用于 GeoScene Online 的 "https://www.geosceneonline.cn/sharing/rest" 以及用于内置门户的 "https://www.geosceneonline.cn/geoscene/sharing/rest"。 更多详情 | Portal | |
Object[] | 主页的自定义 HTML。 更多详情 | Portal | |
Boolean | 指示组织的描述是否显示在主页上。 更多详情 | Portal | |
Object | 加载 | Portal | |
Boolean | 指示是否支持托管服务。 更多详情 | Portal | |
String | 定义符号集的查询。 更多详情 | Portal | |
String | 定义将出现在模板库中的模板集合的查询。 更多详情 | Portal | |
String | 组织缩略图的 URL。 更多详情 | Portal | |
String | 设置组织用户的度量单位。 更多详情 | Portal | |
String | 门户实例的 URL。 更多详情 | Portal | |
String | 组织管理员选择的与 customBaseURL 一起使用的前缀。 更多详情 | Portal | |
PortalUser | 代表门户注册用户的信息。 更多详情 | Portal | |
Boolean | 如果为 | Portal | |
Boolean | 如果为 | Portal | |
String | 当 useVectorBasemaps 为 true 时,定义应在 BasemapGallery 中显示的矢量切片底图的查询。 更多详情 | Portal |
属性详细信息
-
access String
-
组织的访问级别。为 public 时,匿名用户可以访问组织。为 private 时,访问权限仅限于组织成员。
可能值:"public"|"private"
-
allSSL Boolean
-
如果为
true
,则必须通过 SSL 访问组织的门户资源。
-
authMode String
-
用于在用户尝试访问安全资源时处理身份验证的身份验证模式。
可能值 描述 anonymous 当请求安全资源时,将返回错误。 auto 当请求安全资源时,用户将登录。 immediate 用户将在加载门户时登录。 可能值:"anonymous"|"auto"|"immediate"
- 默认值:auto
-
在发出跨域资源共享 (CORS) 请求以访问受 web 层身份验证保护的服务时,可以将凭据发送到的可信服务器数组。
-
basemapGalleryGroupQuery String起始版本:GeoScene Maps SDK for JavaScript 4.4
-
当 useVectorBasemaps 不为 true 时,定义应在 BasemapGallery 中显示的底图的查询。fetchBasemaps() 方法会自动执行此操作。
-
bingKey String
-
Bing 密钥,用于使用 Bing 地图的 web 地图。
-
canListApps Boolean
-
指示组织是否可以在市场中列出应用程序。
-
canListData Boolean
-
指示组织是否可以在市场中列出数据服务。
-
canListPreProvisionedItems Boolean
-
指示组织是否可以在市场中列出预先配置的项目。
-
canProvisionDirectPurchase Boolean
-
指示组织是否可以在没有客户请求的情况下在市场中提供直接购买。
-
canSearchPublic Boolean
-
如果为
true
,则组织的公共项目、群组和用户将包含在搜索查询中。当为false
时,则不包含组织外部的公共项目。然而,属于组织的公共项目会包括在内。- 默认值:true
-
-
Bing 密钥可以与公共共享,并作为门户描述调用(
/sharing/rest/portals/<orgid>
)的一部分返回。这要求将门户的 access 设置为 public。canShareBingPublic 属性不会公开返回,而只会显示给组织内的用户。- 默认值:false
-
-
若为
true
,则组织成员可共享组织外部的资源。- 默认值:false
-
canSignInGeoScene Boolean
-
指示是否允许配置了企业 IDP 的组织能够打开或关闭 GeoScene 登录。
- 默认值:false
-
canSignInIDP Boolean
-
指示是否允许配置了企业 IDP 的组织能够打开或关闭企业登录。
- 默认值:false
-
colorSetsGroupQuery String
-
此查询可标识包含用于在地图查看器中呈现的颜色集的组。
-
commentsEnabled Boolean
-
指示是否允许组织禁用评论。当 commentsEnabled 为 false 时,将隐藏评论但不移除。对于组织中的所有项目,numComments 设置为 0。调用添加评论和查看评论将失败。如果组织重新启用评论,则显示评论并恢复 numComments。
- 默认值:false
-
created Date
-
组织的创建日期。
-
culture String
-
默认区域性(语言和国家/地区)信息。
-
customBaseUrl String
-
门户的自定义基准 URL。
-
起始版本:GeoScene Maps SDK for JavaScript 4.7
-
类的名称。声明的类名称格式化为
geoscene.folder.className
。
-
defaultBasemap Basemap
-
用于门户的默认底图。在地图查看器中使用。
-
defaultExtent Extent
-
用于门户的默认范围。在地图查看器中使用。范围将位于默认底图的空间参考中。
-
defaultVectorBasemap Basemap起始版本:GeoScene Maps SDK for JavaScript 4.4
-
用于门户的默认矢量底图。在地图查看器中使用。
-
description String
-
组织/门户的描述。
-
devBasemapGalleryGroupQuery String起始版本:GeoScene Maps SDK for JavaScript 4.22
-
定义 apiKey 时,定义应在 BasemapGallery 中显示的底图的查询。fetchBasemaps() 方法会自动执行此操作。
-
eueiEnabled Boolean起始版本:GeoScene Maps SDK for JavaScript 4.7
-
布尔值,用于指示是否选择加入 GeoScene 用户体验改进 (EUEI) 计划。
- 默认值:null
-
门户的精选群组。返回一个对象数组,用于提供对每个专题组的所有者和标题的访问权限。此数组中的每个项目都具有以下规范:
-
featuredItemsGroupQuery String
-
定义精选群组的查询。如果为 null,则组织中查看次数最多的项目将是专题项目。
-
galleryTemplatesGroupQuery String
-
该查询可标识包含图库精选项目的群组。设置一个群组 ID,如果为 null,则在库中显示组织中查看次数最多的项目。
-
hasCategorySchema Boolean起始版本:GeoScene Maps SDK for JavaScript 4.8
-
指示组织是否具有内容类别。
- 默认值:false
-
helperServices Object起始版本:GeoScene Maps SDK for JavaScript 4.4
-
门户提供的帮助服务。这对于确定相关方法的 URL 很有用。建议将这些 URL 与其各自的
rest
模块一起使用,而不是使用已弃用的帮助方法。有关帮助服务的更多信息,请参阅 GeoScene Server 文档中的关于实用程序服务主题。
示例require([ "geoscene/Map", "geoscene/views/MapView", "geoscene/portal/Portal", "geoscene/core/Collection", "geoscene/layers/GraphicsLayer", "geoscene/rest/route", "geoscene/rest/support/RouteParameters", "geoscene/rest/support/Stop", ... ], function(Map, MapView, Portal, Collection, GraphicsLayer, route, RouteParameters, Stop, ... ) { // create new Portal object with relevant URL const portal = new Portal({ url: "YOUR_PORTAL_URL" }); // the stops and route result will be stored in this layer const routingLayer = new GraphicsLayer(); const map = new Map({ basemap: "streets-navigation-vector", layers: [routingLayer] }); const view = new MapView({ container: "viewDiv", map: map, center: [-117.39966, 34.06873], zoom: 10 }); // create a Collection of new Stops const stops = new Collection([ new Stop({ geometry: { x: -117.59275, y: 34.06200 }, name: "Ontario Airport" }), new Stop({ geometry: { x: -117.19570, y: 34.05609 }, name: "Esri Campus" }) ]); // setup the RouteParameters with API key and Stops const routeParams = new RouteParameters({ // An authorization string used to access the routing service apiKey: "YOUR_API_KEY", stops }); // define the symbology used to display the route const routeSymbol = { type: "simple-line", // autocasts as SimpleLineSymbol() color: [175, 155, 215, 0.5], width: 5 }; // load Portal instance portal.load().then(function() { // display URLs to all helper services console.log("Show helperServices URLs: ", portal.helperServices); // access helperServices from the Portal instance // to get the routing URL of interest const routeURL = portal.helperServices.route.url; // use helperServices to perform routing route.solve(routeURL, routeParams).then(showRouteInfo); } // do something useful with the results // like display them to the console // or display them on the map function showRouteInfo(routeSolveResult) { console.log("Show all results: ", routeSolveResult); const routeResult = routeSolveResult.routeResults[0].route; routeResult.symbol = routeSymbol; routingLayer.add(routeResult); } });
-
homePageFeaturedContent String
-
包含要显示在主页特色内容中的群组。
-
homePageFeaturedContentCount Number
-
可在主页上显示的特色项目的数量。最大值为 100。仅接受整数。
-
httpPort Number
-
门户用于 HTTP 通信的端口。
-
httpsPort Number
-
门户用于 HTTPS 通信的端口。
-
id String
-
拥有此门户的组织的 ID。如果为
null
,则这是匿名和非组织用户的默认门户。
-
ipCntryCode String
-
调用 IP 的国家/地区代码 (仅适用于 GeoScene Online)。
-
isOrganization Booleanreadonly
-
指示门户是否为组织。
-
isPortal Boolean
-
指示门户是否为本地。
-
isReadOnly Boolean起始版本:GeoScene Maps SDK for JavaScript 4.14
-
指示门户是否为只读模式。如果为
true
,则无法在门户上创建、修改或删除内容。
-
layerTemplatesGroupQuery String
-
此查询可标识包含编辑模板的组。
-
loaded Booleanreadonly
-
指示门户的资源是否已加载。如果为
true
,则可访问对象的所有属性。- 默认值:false
-
loadError Errorreadonly
-
如果加载时发生错误,则返回 Error 对象。
- 默认值:null
-
loadStatus Stringreadonly
-
表示 load 操作的状态。
值 描述 not-loaded 对象的资源尚未加载。 loading 对象的资源当前正在加载。 loaded 对象的资源已加载且未出现错误。 failed 无法加载对象的资源。有关更多详情,请参阅 loadError。 可能值:"not-loaded"|"loading"|"failed"|"loaded"
- 默认值:not-loaded
-
加载时发生的警告列表。
-
maxTokenExpirationMinutes Number
-
为组织用户颁发的令牌的最大有效性 (以分钟为单位)。-1 为默认值,是一个特殊值,表示无限超时或永久令牌。对于使用 OAuth 2.0 授权批准进行授予的令牌,它表示刷新令牌的最大有效性。对于访问令牌,最大有效期为两周或此值中的较低值。
-
modified Date
-
上次修改组织的日期。
-
name String
-
组织的名称。
-
portalHostname String
-
门户主机的 URL。
-
portalMode String
-
门户模式。
可能值:"multitenant"|"singletenant"
-
portalProperties Object
-
特定于组织的属性,例如,“联系我们”链接。如果组织是公开的,则属性对匿名用户可见。
-
region String
-
组织的区域。
-
restUrl Stringreadonly
-
门户的 REST URL,例如,用于 GeoScene Online 的 "https://www.geosceneonline.cn/sharing/rest" 以及用于内置门户的 "https://www.geosceneonline.cn/geoscene/sharing/rest"。
-
主页的自定义 HTML。
-
showHomePageDescription Boolean
-
指示组织的描述是否显示在主页上。
-
sourceJSON Object起始版本:GeoScene Maps SDK for JavaScript 4.13
-
加载
Portal
时,用于创建属性值的 JSON。虽然最常用的属性直接在Portal
类上公开,但这提供了对门户返回的所有信息的访问。如果在使用较旧版本的 API 构建的应用程序中工作,该应用程序需要访问较新版本的 portal 属性,则此属性非常有用。
-
supportsHostedServices Boolean
-
指示是否支持托管服务。
- 默认值:false
-
symbolSetsGroupQuery String
-
定义符号集的查询。
-
templatesGroupQuery String
-
定义将出现在模板库中的模板集合的查询。
-
thumbnailUrl Stringreadonly
-
组织缩略图的 URL。
-
url String
-
门户实例的 URL。应使用通过 geosceneConfig.portalUrl 设置门户实例的位置,而不是直接在此属性上设置它。
如果使用本地门户,则语法应类似于:
https://www.example.com/geoscene
默认值:此属性的默认值与 geosceneConfig.portalUrl 属性值相同。
-
urlKey String
-
组织管理员选择的与 customBaseURL 一起使用的前缀。
-
user PortalUser
-
代表门户注册用户的信息。
-
useStandardizedQuery Boolean
-
如果为
true
,则在查询图层和表时,只能使用符合 SQL92 的简单 where 子句。建议的安全设置为 true。
-
useVectorBasemaps Boolean起始版本:GeoScene Maps SDK for JavaScript 4.4
-
如果为
true
,则组织已选择使用矢量切片底图,并且应使用 vectorBasemapGalleryGroupQuery 代替 basemapGalleryGroupQuery,使用 defaultVectorBasemap 代替 defaultBasemap。fetchBasemaps() 方法自动使用 vectorBasemapGalleryGroupQuery。
-
vectorBasemapGalleryGroupQuery String起始版本:GeoScene Maps SDK for JavaScript 4.4
-
当 useVectorBasemaps 为 true 时,定义应在 BasemapGallery 中显示的矢量切片底图的查询。fetchBasemaps() 方法会自动执行此操作。
方法概述
名称 | 返回值类值 | 描述 | 类 |
---|---|---|---|
添加一个或多个与对象的生命周期相关联的句柄。 更多详情 | Accessor | ||
如果 load() 操作已在进行中,则取消它。 更多详情 | Portal | ||
Promise<ElevationLayer[]> | 帮助器函数,用于返回从门户的有限错误栅格压缩 (LERC) 高程帮助器服务派生的 ElevationsLayers 数组。 更多详情 | Portal | |
Promise<Basemap[]> | 获取显示在 BasemapGallery 中的底图。 更多详情 | Portal | |
Promise<object[]> | 如果存在,则获取组织的类别模式。 更多详情 | Portal | |
Promise<PortalGroup[]> | 获取门户中的特色组。 更多详情 | Portal | |
Promise<object[]> | 获取并返回与门户实例相关联的区域。 更多详情 | Portal | |
Promise<Object> | 获取并返回当前用户看到的门户设置,无论是匿名用户还是登录用户。 更多详情 | Portal | |
Portal | 第一次调用此方法时,会创建一个新的 | Portal | |
Boolean | 如果存在指定的句柄组,则返回 true。 更多详情 | Accessor | |
Boolean |
| Portal | |
Boolean |
| Portal | |
Boolean |
| Portal | |
Promise | 加载此类引用的资源。 更多详情 | Portal | |
Promise<PortalQueryResult> | 对 Portal 执行查询,以返回与输入查询相匹配的 PortalGroup 对象数组。 更多详情 | Portal | |
Promise<PortalQueryResult> | 对 Portal 执行查询,以返回与输入查询相匹配的 PortalItem 对象数组。 更多详情 | Portal | |
Promise<PortalQueryResult> | 对 Portal 执行查询,以返回与输入查询相匹配的 PortalUser 对象的数组。 更多详情 | Portal | |
移除对象拥有的句柄组。 更多详情 | Accessor | ||
Promise | 一旦创建了类的实例,就可以使用 | Portal |
方法详细说明
-
addHandles(handleOrHandles, groupKey)inherited起始版本:GeoScene Maps SDK for JavaScript 4.25
-
添加一个或多个与对象的生命周期相关联的句柄。当对象被销毁时,将移除句柄。
// Manually manage handles const handle = reactiveUtils.when( () => !view.updating, () => { wkidSelect.disabled = false; }, { once: true } ); // Handle gets removed when the object is destroyed. this.addHandles(handle);
参数handleOrHandles WatchHandle|WatchHandle[]对象销毁后,标记为要移除的句柄。
groupKey *optional标识句柄应添加到的组的键。组中的所有句柄稍后都可使用 Accessor.removeHandles() 进行删除。如果未提供键,则句柄将被添加到默认组。
-
cancelLoad()
-
如果 load() 操作已在进行中,则取消它。
-
createElevationLayers(){Promise<ElevationLayer[]>}起始版本:GeoScene Maps SDK for JavaScript 4.12
-
帮助器函数,用于返回从门户的有限错误栅格压缩 (LERC) 高程帮助器服务派生的 ElevationsLayers 数组。
返回类型 描述 Promise<ElevationLayer[]> 解析后,返回 ElevationLayers 的数组。 - 另请参阅
-
获取显示在 BasemapGallery 中的底图。定义 apiKey 后,底图将基于 devBasemapGalleryGroupQuery。当 useVectorBasemaps 为
true
时,底图将基于 vectorBasemapGalleryGroupQuery。否则,它基于 basemapGalleryGroupQuery。参数basemapGalleryGroupQuery Stringoptional提供时,此参数用于根据输入查询参数获取底图。
options Objectoptional具有以下属性的对象。
规范signal AbortSignaloptional可用于中止异步任务的信号对象。当发出中止信号时,返回的 Promise 将被拒绝,并具有一个名为
AbortError
的错误。另请参阅 AbortController 以获取有关如何构造可用于传递中止信号的控制器的更多信息。返回类型 描述 Promise<Basemap[]> 解析为表示门户底图库中使用的底图的 Basemap 对象数组。 示例portal.fetchBasemaps("title:\"Cloud Creek Basemaps\" AND owner:jsmith") .then(function(basemaps){ // do something with the basemaps });
-
起始版本:GeoScene Maps SDK for JavaScript 4.8
-
如果存在,则获取组织的类别模式。
参数options Objectoptional具有以下属性的对象。
规范signal AbortSignaloptional可用于中止异步任务的信号对象。当发出中止信号时,返回的 Promise 将被拒绝,并具有一个名为
AbortError
的错误。另请参阅 AbortController 以获取有关如何构造可用于传递中止信号的控制器的更多信息。返回类型 描述 Promise<object[]> 解析为包含以下属性的对象数组: 属性 类型 描述 title string 类别模式的标题。 categories object[] 包含标题和类别数组的对象数组。 示例// Fetches the category schema portal.fetchCategorySchema().then(function(schemas){ schemas.forEach(function(schema){ console.log("schema: ", schema); }); });
-
fetchFeaturedGroups(options){Promise<PortalGroup[]>}
-
获取门户中的特色组。
参数options Objectoptional具有以下属性的对象。
规范signal AbortSignaloptional可用于中止异步任务的信号对象。当发出中止信号时,返回的 Promise 将被拒绝,并具有一个名为
AbortError
的错误。另请参阅 AbortController 以获取有关如何构造可用于传递中止信号的控制器的更多信息。返回类型 描述 Promise<PortalGroup[]> 解析为一组 PortalGroup 对象。 示例// fetch featured groups portal.fetchFeaturedGroups().then(function(groups){ groups.forEach(function(group){ group.fetchMembers().then(function(members){ console.log("member", members); }); }); });
-
起始版本:GeoScene Maps SDK for JavaScript 4.8
-
获取并返回与门户实例相关联的区域。
参数options Objectoptional具有以下属性的对象。
规范signal AbortSignaloptional可用于中止异步任务的信号对象。当发出中止信号时,返回的 Promise 将被拒绝,并具有一个名为
AbortError
的错误。另请参阅 AbortController 以获取有关如何构造可用于传递中止信号的控制器的更多信息。返回类型 描述 Promise<object[]> 解析为包含以下属性的对象数组: 属性 类型 描述 localizedName string 区域的本地化名称。例如,"Australia"。 name string 区域名称。例如,"Australia"。 region string 区域名称。例如,"AU"。
-
起始版本:GeoScene Maps SDK for JavaScript 4.23
-
获取并返回当前用户看到的门户设置,无论是匿名用户还是登录用户。这将返回诸如任何可访问的帮助器服务、允许的重定向 URI 以及任何访问通知或信息横幅的配置等信息。
参数options Objectoptional具有以下属性的对象。
规范signal AbortSignaloptional可用于中止异步任务的信号对象。当发出中止信号时,返回的 Promise 将被拒绝,并具有一个名为
AbortError
的错误。另请参阅 AbortController 以获取有关如何构造可用于传递中止信号的控制器的更多信息。返回类型 描述 Promise<Object> 解析为包含信息的对象,例如帮助器服务、重定向 URI 和访问通知或信息横幅的配置。
-
-
第一次调用此方法时,会创建一个新的
Portal
实例。来自 config.portalUrl 的 URL 将自动用于此实例。然后缓存此实例并用于对该方法的任何后续调用。返回类型 描述 Portal 门户实例。
-
起始版本:GeoScene Maps SDK for JavaScript 4.25
-
如果存在指定的句柄组,则返回 true。
参数groupKey *optional组键。
返回类型 描述 Boolean 如果存在指定的句柄组,则返回 true
。示例// Remove a named group of handles if they exist. if (obj.hasHandles("watch-view-updates")) { obj.removeHandles("watch-view-updates"); }
-
isFulfilled(){Boolean}
-
isFulfilled()
可用于验证创建类的实例是否已完成 (已解决或已拒绝)。如果满足,则返回true
。返回类型 描述 Boolean 指示创建类的实例是否已完成 (已解决或已拒绝)。
-
isRejected(){Boolean}
-
isRejected()
可用于验证创建类的实例是否被拒绝。如果被拒绝,则返回true
。返回类型 描述 Boolean 指示创建类的实例是否已被拒绝。
-
load(signal){Promise}
-
加载此类引用的资源。如果视图是使用地图实例构造的,则此方法会自动为 View 及其在 Map 中引用的所有资源执行。
开发人员在访问不会在 View 中加载的资源时,必须调用此方法。
load()
方法仅在第一次调用时触发资源的加载。随后的调用将返回相同的 promise。可以提供一个
signal
来停止对Loadable
实例加载状态感兴趣。当信号中止时,实例不会停止其加载过程,只有 cancelLoad 可以中止它。参数signal AbortSignaloptional可用于中止异步任务的信号对象。当发出中止信号时,返回的 Promise 将被拒绝,并具有一个名为
AbortError
的错误。另请参阅 AbortController 以获取有关如何构造可用于传递中止信号的控制器的更多信息。返回类型 描述 Promise 资源已加载时解析。
-
queryGroups(queryParams, options){Promise<PortalQueryResult>}
-
对 Portal 执行查询,以返回与输入查询相匹配的 PortalGroup 对象数组。
参数自动转换自 ObjectPortalQueryParams 中定义的输入查询参数。
options Objectoptional具有以下属性的对象。
规范signal AbortSignaloptional可用于中止异步任务的信号对象。当发出中止信号时,返回的 Promise 将被拒绝,并具有一个名为
AbortError
的错误。另请参阅 AbortController 以获取有关如何构造可用于传递中止信号的控制器的更多信息。返回类型 描述 Promise<PortalQueryResult> 解决时,将解析为 PortalQueryResult 的实例,该实例包含 PortalGroup 对象的 results
数组,表示与输入查询相匹配的所有组。- 另请参阅
-
queryItems(queryParams, options){Promise<PortalQueryResult>}
-
对 Portal 执行查询,以返回与输入查询相匹配的 PortalItem 对象数组。
参数自动转换自 ObjectPortalQueryParams 中定义的输入查询参数。
options Objectoptional具有以下属性的对象。
规范signal AbortSignaloptional可用于中止异步任务的信号对象。当发出中止信号时,返回的 Promise 将被拒绝,并具有一个名为
AbortError
的错误。另请参阅 AbortController 以获取有关如何构造可用于传递中止信号的控制器的更多信息。返回类型 描述 Promise<PortalQueryResult> 解决时,将解析为 PortalQueryResult 的实例,该实例包含 PortalItem 对象的 results
数组,表示与输入查询相匹配的所有项目。- 另请参阅
示例// Once portal is loaded, user signed in portal.load().then(function() { console.log(portal); // Create query parameters for the portal search // This object autocasts as new PortalQueryParams() let queryParams = { query: "owner:" + portal.user.username, sortField: "numViews", sortOrder: "desc", num: 20 }; // Query the items based on the queryParams created from portal above portal.queryItems(queryParams).then(createGallery); });
-
queryUsers(queryParams, options){Promise<PortalQueryResult>}
-
对 Portal 执行查询,以返回与输入查询相匹配的 PortalUser 对象的数组。
参数自动转换自 ObjectPortalQueryParams 中定义的输入查询参数。
options Objectoptional具有以下属性的对象。
规范signal AbortSignaloptional可用于中止异步任务的信号对象。当发出中止信号时,返回的 Promise 将被拒绝,并具有一个名为
AbortError
的错误。另请参阅 AbortController 以获取有关如何构造可用于传递中止信号的控制器的更多信息。返回类型 描述 Promise<PortalQueryResult> 解决时,将解析为 PortalQueryResult 的实例,该实例包含 PortalUser 对象的 results
数组,表示与输入查询相匹配的所有项目。- 另请参阅
示例// Once portal is loaded, user signed in portal.load().then(function() { // queryUsers // This object autocasts as new PortalQueryParams() let queryParameters = { query: "username:" + portal.user.username }; portal.queryUsers(queryParameters).then(function(queryResults){ queryResults.results[0].fetchFolders().then(function(folders){ folders.forEach(function(folder){ console.log(" user folder", folder.title); }); }); }); });
-
removeHandles(groupKey)inherited起始版本:GeoScene Maps SDK for JavaScript 4.25
-
移除对象拥有的句柄组。
参数groupKey *optional要移除的组键或组键的数组或集合。
示例obj.removeHandles(); // removes handles from default group obj.removeHandles("handle-group"); obj.removeHandles("other-handle-group");
-
when(callback, errback){Promise}起始版本:GeoScene Maps SDK for JavaScript 4.6
-
一旦创建了类的实例,就可以使用
when()
。此方法接受两个输入参数:callback
函数和errback
函数。callback
在类的实例加载时执行。errback
在类的实例无法加载时执行。参数callback Functionoptional当 promise 解决时调用的函数。
errback Functionoptional当 promise 失败时执行的函数。
返回类型 描述 Promise 返回 callback
结果的新承诺,可用于链接其他函数。示例// Although this example uses MapView, any class instance that is a promise may use when() in the same way let view = new MapView(); view.when(function(){ // This function will execute once the promise is resolved }, function(error){ // This function will execute if the promise is rejected due to an error });