Skip to content

Interface

The extension interface for AppConfigOperations extension point. The methods in this class must return the new appConfig

Inheritance: AppConfigOperationsExtensionBaseExtension

Properties

Hide inherited properties
PropertyTypeNotes
id
inherited
string

The unique ID. For widget's provided extension, the id pattern is: widgetId + extensionName

index
inherited
number

If an extension point supports multiple extensions, the index is used to determine the extension order.

label
inherited
string

The extension label.

name
inherited
string

The extension name.

widgetId
inherited
string

The widget ID that provides the extension. No widget id means the extension is provided by Jimu.

id

inheritedinherited
Interface Property
id: string

The unique ID. For widget's provided extension, the id pattern is: widgetId + extensionName

Inherited from BaseExtension.id

index

optionalinheritedinherited
Interface Property
index: number

If an extension point supports multiple extensions, the index is used to determine the extension order.

Inherited from BaseExtension.index

label

optionalinheritedinherited
Interface Property
label: string

The extension label.

Inherited from BaseExtension.label

name

optionalinheritedinherited
Interface Property
name: string

The extension name.

Inherited from BaseExtension.name

widgetId

optionalinheritedinherited
Interface Property
widgetId: string

The widget ID that provides the extension. No widget id means the extension is provided by Jimu.

Inherited from BaseExtension.widgetId

Methods

MethodReturnsNotes
afterWidgetCopied(sourceWidgetId, sourceAppConfig, destWidgetId, destAppConfig, contentMap?)IMAppConfig

Process the widget's internal config after it is copied if necessary. Only the original widget's extension should get invoked with the new copiedWidgetId.

anyWidgetWillRemove(appConfig, widgetId)IMAppConfig

This method is invoked when a widget is going to be removed from the app config. This method is invoked before the widget has been removed from the layout.

appConfigWillChange(appConfig)IMAppConfig

This method is invoked before the app config is changed.

dataSourceWillRemove(appConfig, dataSourceId)IMAppConfig

If a widget saves the data source id in its internal config, it should override this method to do the clean ups. Only the widgets that save the data source id in it's useDataSources will get invoked.

mapWidgetWillRemove(appConfig, mapWidgetId)IMAppConfig

If a widget saves some map related data its internal config, it should override this method to do the clean ups. Only the widgets that save the map widget id in it's useMapWidgets will get invoked.

useDataSourceWillChange(appConfig, oldDataSourceId, newDataSourceId)IMAppConfig

If a widget saves some config that is related to the data source in its internal config, it should override this method to do the clean ups. In most cases, a widget can just do the clean ups in its setting panel. However, when we remove a used data source from the list, the list internal widgets don't have the chance to do the clean ups. These widgets (Text/Image/Button) should override this method to do the clean ups. Another case is in Express mode, when the map widget de-selects a data source, all related widgets "useDataSources" are cleared.

utilityWillRemove(appConfig, utilityId)IMAppConfig

If a widget saves the utility id in its internal config, it should override this method to do the clean ups. Only the widgets that save the utility id in it's useUtilities will get invoked.

widgetWillRemove(appConfig)IMAppConfig

Do some cleanup operations before current widget is removed. This method is invoked after the widget has been removed from the layout.

afterWidgetCopied

optional
Interface Method
afterWidgetCopied(sourceWidgetIdstring, sourceAppConfigIMAppConfig, destWidgetIdstring, destAppConfigIMAppConfig, contentMap?DuplicateContext): IMAppConfig

Process the widget's internal config after it is copied if necessary. Only the original widget's extension should get invoked with the new copiedWidgetId.

Parameters
ParameterTypeNotes
sourceWidgetIdstring

Id of the widget that is copied.

sourceAppConfigIMAppConfig

The app config the sourceWidgetId comes from.

destWidgetIdstring

Id of the widget that is created in the destAppConfig.

destAppConfigIMAppConfig

The app config the destWidgetId is created in.

contentMapDuplicateContext

The map of content ids after copying. Provided when something (page, widget, section, etc.) is duplicated. The key is the content id in the original app config, and the value is the content id in the new app config.

Returns 
IMAppConfig

anyWidgetWillRemove

optional
Interface Method
anyWidgetWillRemove(appConfigIMAppConfig, widgetIdstring): IMAppConfig

This method is invoked when a widget is going to be removed from the app config. This method is invoked before the widget has been removed from the layout.

Parameters
ParameterTypeNotes
appConfigIMAppConfig
widgetIdstring

the widget id that is going to be removed

Returns 
IMAppConfig

appConfigWillChange

optional
Interface Method
appConfigWillChange(appConfigIMAppConfig): IMAppConfig

This method is invoked before the app config is changed.

Parameters
ParameterType
appConfigIMAppConfig
Returns 
IMAppConfig

dataSourceWillRemove

optional
Interface Method
dataSourceWillRemove(appConfigIMAppConfig, dataSourceIdstring): IMAppConfig

If a widget saves the data source id in its internal config, it should override this method to do the clean ups. Only the widgets that save the data source id in it's useDataSources will get invoked.

Parameters
ParameterTypeNotes
appConfigIMAppConfig

The app config.

dataSourceIdstring

The data source id that is going to be removed.

Returns 
IMAppConfig

mapWidgetWillRemove

optional
Interface Method
mapWidgetWillRemove(appConfigIMAppConfig, mapWidgetIdstring): IMAppConfig

If a widget saves some map related data its internal config, it should override this method to do the clean ups. Only the widgets that save the map widget id in it's useMapWidgets will get invoked.

Parameters
ParameterTypeNotes
appConfigIMAppConfig

The app config.

mapWidgetIdstring

The map widget id that is going to be removed.

Returns 
IMAppConfig

useDataSourceWillChange

optional
Interface Method
useDataSourceWillChange(appConfigIMAppConfig, oldDataSourceIdstring, newDataSourceIdstring): IMAppConfig

If a widget saves some config that is related to the data source in its internal config, it should override this method to do the clean ups. In most cases, a widget can just do the clean ups in its setting panel. However, when we remove a used data source from the list, the list internal widgets don't have the chance to do the clean ups. These widgets (Text/Image/Button) should override this method to do the clean ups. Another case is in Express mode, when the map widget de-selects a data source, all related widgets "useDataSources" are cleared.

For config in the widget message action and data action, widget can clean up the config in the useDataSourceWillChange method. For the framework actions, the action can provide the useDataSourceWillChange method to clean up the config.

Parameters
ParameterTypeNotes
appConfigIMAppConfig

The app config.

oldDataSourceIdstring

The use data source id that is going to be removed.

newDataSourceIdstring

The new use data source id that is going to be used.

Returns 
IMAppConfig

utilityWillRemove

optional
Interface Method
utilityWillRemove(appConfigIMAppConfig, utilityIdstring): IMAppConfig

If a widget saves the utility id in its internal config, it should override this method to do the clean ups. Only the widgets that save the utility id in it's useUtilities will get invoked.

Parameters
ParameterTypeNotes
appConfigIMAppConfig

The app config.

utilityIdstring

The utility id that is going to be removed.

Returns 
IMAppConfig

widgetWillRemove

optional
Interface Method
widgetWillRemove(appConfigIMAppConfig): IMAppConfig

Do some cleanup operations before current widget is removed. This method is invoked after the widget has been removed from the layout.

Parameters
ParameterType
appConfigIMAppConfig
Returns 
IMAppConfig

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.