Method Overview
| Name | Return Type | Summary | |
|---|---|---|---|
| Function | A property decorator that creates a two-way binding between the property it decorates and an inner property of one of its members. more details | more details | |
| Function | This method decorator is used to define the method that will cast a property from a class. more details | more details | |
| Function | This parameter decorator is used to define the function or class for a parameter of a method. more details | more details | |
| * | A function that can be used as a class. more details | more details | |
| Function | This convenience decorator is used to define an Accessor property. more details | more details | |
| Function | A class decorator that must be used together with the | more details | |
Method Details
aliasOf(propertyName){Function}
A property decorator that creates a two-way binding between the property it decorates and an inner property of one of its members.
Parameter:propertyName StringThe aliased property name.
Returns:Type Description Function The property decorator. Examples:@aliasOf("viewModel.name") name: string = "name";@aliasOf("viewModel.someMethod") someMethod: () => string;cast(propertyName){Function}
This method decorator is used to define the method that will cast a property from a class.
Parameter:propertyName StringThe property name the function will cast.
Returns:Type Description Function The method descriptor. - See also:
Example:/// <amd-dependency path="esri/core/tsSupport/declareExtendsHelper" name="__extends" /> /// <amd-dependency path="esri/core/tsSupport/decorateHelper" name="__decorate" /> import Accessor = require("esri/core/Accessor"); import { subclass, property, declared, cast } from "esri/core/tsSupport/declare"; @subclass() class Color extends declared(Accessor) { @property() r: number = 0; @property() g: number = 0; @property() b: number = 0; @property() a: number = 1; @cast("r") @cast("g") @cast("b") protected castComponent(value) { // cast method that clamp the value that // will be set on r, g or b between 0 and 255 return Math.max(0, Math.min(255, value)); } @cast("a") protected castAlpha(value) { // cast method that clamp the value that // will be set on a between 0 and 255 return Math.max(0, Math.min(1, value)); } }cast(classFunction){Function}
This parameter decorator is used to define the function or class for a parameter of a method.
Parameter:classFunction FunctionThe function or class to cast the parameter
Returns:Type Description Function The method descriptor. - See also:
Example:/// <amd-dependency path="esri/core/tsSupport/declareExtendsHelper" name="__extends" /> /// <amd-dependency path="esri/core/tsSupport/decorateHelper" name="__decorate" /> import Accessor = require("esri/core/Accessor"); import { subclass, property, declared } from "esri/core/tsSupport/declare"; @subclass() class QueryTask extends declared(Accessor) { execute(@cast(Query) query: Query): IPromise<FeatureSet> { return ...; } }declared(baseClass, mixinClasses){*}
Since: ArcGIS API for JavaScript 4.2A function that can be used as a class. It extends expression and is used in conjunction with the
@subclassdecorator to create a class compatible to dojo.declare. Please refer to thesubclassdocumentation for further information.Parameters:baseClassThe class to extend.
repeatablemixinClasses ObjectThe mixin classes used to extend the base class.
Returns:Type Description * The first baseClass. Example:// typescript syntax which creates a subclass that extends the Accessor class. @subclass("my.custom.class") class MyCustomClass extends declared(Accessor) { // ... }property(propertyMetadata){Function}
This convenience decorator is used to define an Accessor property. Any property defined with this decorator can now be
getandset. In addition, you can watch for any property changes. Many times this decorator is used in conjunction with the @renderable decorator.Parameters:optionalpropertyMetadata objectAn object describing the property.
Specification:optionaldependsOn String[]Property names of dependencies.
optionaltype FunctionThe constructor used to autocast the property.
optionalcast FunctionThe function to use to autocast the property. Alternative to define the
type. The function is called with the value set by the user and should return the cast value.optionalreadOnly BooleanIndicates whether the property is read-only, default is
false.optionalaliasOf StringThe property decorator that creates a two-way binding between the property it decorates and an inner property of one of its members.
optionalvalue objectThe default value for the property.
Returns:Type Description Function The property descriptor. - See also:
Example:// typescript syntax to specify the property. @property() title: string = "Awesome Title!"subclass(declaredClass){Function}
A class decorator that must be used together with the
declaredfunction to create a class compatible to dojo.declare. It supports both single and multiple inheritance and can be considered the underlying functionality needed when creating 4.x classes.Parameter:optionaldeclaredClass StringThe subclass name.
Returns:Type Description Function The class decorator. Examples:// Single inheritance - typescript syntax which creates a subclass that extends the Accessor class. @subclass("my.custom.class") class MyCustomClass extends declared(Accessor) { // ... }// Multiple inheritance - typescript syntax which creates a subclass that extends multiple classes // Use declaration merging to add mixins to the SceneLayer type interface SceneLayer extends SceneService { } // provide a fully qualified namespace for the resulting subclass @subclass("esri.layers.SceneLayer") class SceneLayer extends declared(Layer, SceneService) { // do something }