ExpressionInfo

require(["esri/support/ExpressionInfo"], function(ExpressionInfo) { /* code goes here */ });
Class: esri/support/ExpressionInfo
Inheritance: ExpressionInfo Accessor
Since: ArcGIS API for JavaScript 4.10

Defines the Arcade expressions executed in a layer's PopupTemplate. These expressions evaluate to either a number, string, array, or dictionary value on a feature-by-feature basis at runtime. The values display within the view's popup as if they are field values. They can be displayed in a table using the FieldInfo of the popupTemplate's content or referenced within a simple string.

See also:
Example:
// Display a table in the popup's content referencing two values
// one from a field, and another returned from an Arcade expression
layer.popupTemplate = {
  title: "Population in {NAME}",
  content: [{
    type: "fields",
    fieldInfos: [{
      fieldName: "POP_2015",
      label: "Total population (2015)",
      format: {
        digitSeparator: true
      }
    }, {
      fieldName: "expression/per-asian"
    }]
  }]
};

Constructors

new ExpressionInfo(properties)
Parameter:
properties Object
optional

See the properties for a list of all the properties that may be passed into the constructor.

Property Overview

Any properties can be set, retrieved or listened to. See the Working with Properties topic.
NameTypeSummaryClass
String

The name of the class.

more details
more detailsAccessor
String

An Arcade expression evaluating to either a string, number, dictionary, or array.

more details
more detailsExpressionInfo
String

The name of the expression.

more details
more detailsExpressionInfo
String|Number

Indicates the return type of the Arcade expression.

more details
more detailsExpressionInfo
String

The title used to describe the value returned by the expression in the popup.

more details
more detailsExpressionInfo

Property Details

declaredClassStringreadonly inherited

The name of the class. The declared class name is formatted as esri.folder.className.

expressionString

An Arcade expression evaluating to either a string, number, dictionary, or array. This expression can reference field values using the $feature global variable and perform mathematical calculations and logical evaluations at runtime.

Example:
// Set a simple string to a popupTemplate's content
// referencing the value returned from an Arcade expression
expressionInfo.expression = "{expression/per-asian}% of the people in this tract are Asian.";
nameString

The name of the expression. This is used to reference the value of the given expression in the popupTemplate's content property by wrapping it in curly braces and prefacing it with expression/ (e.g. {expression/expressionName}). See the code snippets below for more examples.

returnTypeString|Number

Indicates the return type of the Arcade expression.

titleString

The title used to describe the value returned by the expression in the popup. This will display if the value is referenced in a FieldInfo table.

Method Overview

NameReturn TypeSummaryClass
ExpressionInfo

Creates a deep clone of the ExpressionInfo class.

more details
more detailsExpressionInfo
*

Creates a new instance of this class and initializes it with values from a JSON object generated from a product in the ArcGIS platform.

more details
more detailsExpressionInfo
Object

Converts an instance of this class to its ArcGIS portal JSON representation.

more details
more detailsExpressionInfo

Method Details

Creates a deep clone of the ExpressionInfo class.

Returns:
TypeDescription
ExpressionInfoA deep clone of the ExpressionInfo instance.
fromJSON(json){*}static

Creates a new instance of this class and initializes it with values from a JSON object generated from a product in the ArcGIS platform. The object passed into the input json parameter often comes from a response to a query operation in the REST API or a toJSON() method from another ArcGIS product. See the Using fromJSON() topic in the Guide for details and examples of when and how to use this function.

Parameter:
json Object

A JSON representation of the instance in the ArcGIS format. See the ArcGIS REST API documentation for examples of the structure of various input JSON objects.

Returns:
TypeDescription
*Returns a new instance of this class.
toJSON(){Object}

Converts an instance of this class to its ArcGIS portal JSON representation. See the Using fromJSON() topic in the Guide for more information.

Returns:
TypeDescription
ObjectThe ArcGIS portal JSON representation of an instance of this class.

API Reference search results

NameTypeModule
Loading...