The Jimu library allows you to extend ArcGIS Experience Builder. In most cases, you extend Experience Builder by creating custom widgets and themes. Additionally, you can create deeper customizations through Jimu extensions.
The Jimu library defines specific extension points. An extension point defines the interface that extensions must conform to. An extension is a class that implements the extension point interface. This interface is the
extension exported from
jimu-core. To provide an extension in a widget, you must declare the extension in the widget's
"point": "<Extension point name>",
"uri": "<Extension uri, relative to src folder>"
Jimu defines a variety of extension points that are defined in the API documentation. Two commonly-used extension points are:
App- The extension for this extension point receives the
Appand should return a promise that resolves the processed app config. This can be used to make runtime modifications to the app config, like translating strings (see the Translation sample). The process will be invoked just after app config is loaded.
Dependency- Using this extension you can use third-party libraries that require initialization.
Redux- Using this extension you can define the
reducersfor your widget redux state.
See the Translation sample for an example of how to create an extension.