Important:
The wix-widget
API is used within the code of panels built with the Blocks Panel Builder.
It enables your panel to interact with your Blocks widgets by controlling their properties, design presets, and more.
To use this API, import wixWidget
from the wix-widget
module:
Gets the widget's current design preset.
The getDesignPreset()
function returns a Promise that resolves to the widget's current preset name. To use this function on an inner (nested) widget, use getNestedWidget()
.
Note:
The getDesignPreset()
function doesn't work in preview mode.
Gets the wix-widget
module scoped to an inner (nested) widget.
The getNestedWidget()
function lets you use wix-widget
functions on inner (nested) widgets. It receives a selector of an inner widget and returns a promise that resolves with an object representing the scope of the inner widget.
Note:
The getNestedWidget()
function doesn't work in preview mode.
function getNestedWidget(Selector: string): Promise<object>;
A string of one or more nested widget selectors, which can include a few levels of nesting from outer to inner, separated by spaces. For example: ("#nestedWidget1")
, or ("#nestedWidget1 #nestedWidget2")
.
import wixWidget from "wix-widget";
//...
wixWidget
.getNestedWidget("#nestedWidget1 #nestedWidget2") //nestedWidget2 is inside nestedWidget1
.then((nestedWixWidget) => nestedWixWidget.getDesignPreset())
.then((nestedWidgetPreset) => {
// do something with the design preset of nestedWidget2
});